2

Firebase をバックエンドとして使用するアプリケーションに取り組んでいます。Firebase を使用した GitHub 認証の実用的な実装があります。ただし、アプリケーション全体 (すべての読み取り/書き込み操作) を特定の GitHub 組織内の人々に制限したいと考えています。

私が収集したところによると、それは Forge にセキュリティ ルールを追加することによって行われます。ただし、ユーザーの組織は、GitHub が使用のために Firebase に提供する「基本認証データ」の一部ではありません。特定の組織のメンバーのみがアプリを利用できるようにする方法はありますか?

現在のコード:

var FB = new Firebase('https://XXXXX.firebaseio.com');
var auth = new FirebaseSimpleLogin(FB, function(error, user){
  if(user==null){
    auth.login('github',{rememberMe:true});
  }
  else{
    //We are logged in
    $.getJSON("https://api.github.com/user/orgs?access_token="+user.accessToken+"&callback=?", function(data){
      var orgs = data.data.map(function(org){return org.login});
      if(orgs.indexOf(config.github_org)>-1){
        //Public Member of Chosen Github Org
        //Now we fetch the data and render it
      }
      else{
        //Throw them out
        alert("Join the group "+config.github_org+" on GitHub to get access to Eon");
        document.location="https://github.com/"+config.github_org;
      }
    })
  }
});
4

1 に答える 1