2017-07-20 18 views
0

をユーザーに返します。私はないアプリに戻ってそれを送る、私はトークンを作成(LinkedInのためのカスタムトークンと、)Firebase認証は、私がLinkedInにFirebaseでログインしようとしているがない電子メールやデータなし(のみUID)

"iss" : service_account_email 
"sub" : service_account_email 
"aud", "https://identitytoolkit.googleapis.com/google.identity.identitytoolkit.v1.IdentityToolkit" 
"iat", Date().timeIntervalSince1970 
"exp", Date().timeIntervalSince1970.advanced(by: 3600) 
"uid", String.randomString(length:28) 

これから:私は私の秘密鍵、私はRS256を使用して、これは私のペイロードであるを持って、私のサーバー上でカスタムトークンを生成

Auth.auth().signIn(withCustomToken: token!, completion: { (user, error) in 

は、私は戻ってエラーとユーザーを受けないので、トークンが有効です。問題は、ユーザーに値がないことです(電子メールなし、displayNameなどなし)。 String.randomString(長さ:28)私は設定1であるuidです唯一

はどのようにして、ユーザーの電子メールやその他の情報を取得することができますか?私のlinkedinアカウントでは、私はdisplayname、電子メール、画像などがありますが、ここでは何もありません。

ありがとうございました

+0

あなたがJWTを取得するためにRS256方法を説明していただけますか? – Chace

答えて

0

これは手動で設定する必要があります。 Firebase Authにはプロファイル(写真のURLと表示名)とメールを更新するためのAPIがあります。カスタムトークン、ユーザーに署名したことで、プロファイルおよび電子メールを更新し、カスタムトークンのアカウントでログインして、あなたのアプリケーションにカスタムトークンと一緒に、このLinkedInのデータを送信することができます。ところで

は、そのユーザーのUIDとしてLinkedInのIDを設定します。ランダムな文字列は使用しないでください。それ以外の場合は、次回LinkedInでサインインすると、同じユーザーが別のユーザーにマップされます。

関連する問題