2017-10-03 29 views
0

先生/生徒のシナリオを前提とすると、「メール招待状」を処理するにはどうすればよいでしょうか?ホワイトリストに登録されたメールアドレスを使用したFirebase認証

CSVアップロードを使用して、他のユーザー(招待されていないユーザー)がアカウントを作成できないようにするユーザーまたはホワイトリストを作成したいと思います。

ホワイトリストを最初にチェックしてユーザーを作成する独自のログインフォームを作成する必要がありますか?

BeforeAuthフックのタイプはありますか?笑。

答えて

1

私は、認証からアクセスを隔離することをお勧めしますCustom Claims。いずれかのユーザーにユーザーを作成させますが、ユーザー作成イベントにはattach a Cloud Functionを付けます。ユーザーがホワイトリスト上のものと一致した場合、custom user claim設定

最後に、あなたのルールでは、データへのアクセスを与える前にその使用のプロパティをチェックし(これはちょうど最近発売を!):

{ 
    "rules": { 
    "adminContent": { 
     ".read": "auth.token.admin === true", 
     ".write": "auth.token.admin === true", 
    } 
    } 
} 
+0

基本的に私はアカウントを作成することができますが、次にonCreateを使ってホワイトリストに登録されていない場合は、アカウントにログインします。 – Rory

+0

これもうまくいくはずですが、ここではonCreateを使用してユーザーに注釈を付け、その注釈に基づいて制限するコンテンツへのアクセスを制御することをお勧めします。さもなければ、(ユーザーが作成され、関数が完了する前に)どこにアクセスできるかは、ある程度の時間があります。注釈ルートでは、OKになったときにのみアクセスできます –

-1

FirebaseAuthは、自分が誰であるかを確認するためのものです。使用を制限するものではありません。

では、ユーザーの基本的なプロフィール 情報にアクセスすることができ、中に成功した記号の後

FirebaseAuth documentationを参照してください、あなたは 他Firebase製品に格納されたデータへのユーザーのアクセスを制御することができます。提供された認証 トークンを使用して、独自のバックエンドサービス内のユーザーの身元を確認することもできます。

Firebase認証を使用して、自分が誰であるかを確認できますが、サービスからの制限は、ユーザプロファイル情報の情報に基づいて決まります。

ただし、FirebaseAuthと他のFirebaseサービスauthと統合されたデータベースまたはストレージしかし、シナリオでは、認証されたユーザーがデータベースまたはストレージ内のルールを使用してアクセスできないようなデータにアクセスするのを制限するロジックを作成する必要があります。あなたはあなたの質問に他のものをあまり指定していないので、私は今のところより良い答えを出すことはできません。

+0

をはい、私は教師にFirebaseに「ユーザープロフィール」をアップロードさせることができます。はい、認証されると、アクセスを制限するためのルール設定が必要になることがわかります。 私はアカウント作成を処理するためのスマートな方法を探しています。私は誰もアカウントを作成しないようにしていますが、学生に通知して自分のパスワードを作成させたいのですが – Rory