2016-07-07 18 views
4

私はカスタムトークンメソッドを使用してfirebaseで認証しています。 Firebase 2.xではFirebaseカスタムトークンから "UserInfo"に追加フィールドを取得する方法

{ "uid" : "user_uid", "user_role": "admin" } 

:サーバーから は、私は他のトークンの分野に加えて、データを以下のいJWTokenを取得しています

我々はトークンフィールドフェッチするために使用 -

authData.getAuth().get("user_role").toString(); 

しかし、新しいFirebase SDKでは:

Hトークンからデータ(user_roleの値)を取得するためのow。

注:私は 、「USER_ROLE」の値を取得するためにのUserInfoを使用してみましたが、このようなカスタムフィールドをフェッチする/方法方法はありません。

答えて

3

追加のクレームは、リアルタイムデータベースとストレージのFirebaseセキュリティルールでアクセスできます。

クライアント側では、JWTクレームがトークンにエンコードされているだけなので、トークンをデコードしてクレームを見ることができます。 jwt-decodeライブラリを使ってブラウザでこれを行うことができます。デコード後、すべてのカスタム認証クレームを見ることができます。

また、個々のユーザーのノードの下にRealtimeデータベース自体にクレームを格納し、必要に応じてそこから読み取ることもできます。そのノードのルールを設定して、ログインしたユーザーだけが自分の主張を読むことができるようにすることができます。

+1

firebase-talkグループにも最近、JWTの情報にアクセスするためのスレッド(https://groups.google.com/forum/#!msg/firebase-talk/xegiLwPcyow/PE7pTRV4GQAJ)がありました。 –

+0

これは本当に私のために働いた。どうもありがとうございます :) –

関連する問題