2

authWithCustomTokenauth0 を介した委任認証フローの一部として、Firebase のメソッドを使用しています。

Auth0 はそのdelegate呼び出しを通じて JWT を提供し、それを に渡しauthWithCustomTokenます。Firebase は、認証が成功したことを通知し、下に値を表示しますauthDataが、この値には null が含まれていますuid。私の知る限り、私の Firebase セキュリティ ルールは制限のために UID を使用する必要があるため、何か問題が発生しているようです。

authData応答は次のとおりです。

{ auth: { fb_id: 'auth0|555afce3f3066cf36f5ebd58' },
expires: 1453234943,
token: 'eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJodHRwczovL2ZyZWVmb3JtZXJzLmF1dGgwLmNvbS8iLCJzdWIiOiJhdXRoMHw1NTVhZmNlM2YzMDY2Y2YzNmY1ZWJkNTgiLCJhdWQiOiJQaEpNNzdmVjhVbnl5Rjc3REFKQzdOM1BPRnNoZTRVYSIsImV4cCI6MTQ1MzIzNDk0MywiaWF0IjoxNDUzMTk4OTQzLCJ2IjowLCJkIjp7ImZiX2lkIjoiYXV0aDB8NTU1YWZjZTNmMzA2NmNmMzZmNWViZDU4In0sImF6cCI6InJnZ3VBc1hkT25mY0NTT1FLcTdpU3F2cDRER1ZMQTVUIn0.87DmiUn0TY0G3kpPyiJoK6d-aTKsBNlfHBHbM4R4WMk',
uid: null,
provider: 'custom' }
4

1 に答える 1

2

を呼び出すauthWithCustomToken()と、auth変数には JWT にあった情報が正確に含まれます。がない場合はauth.uid、おそらく Auth0 がトークンに追加しなかったことが原因です。

Firebase のセキュリティ ルールでは、uid の存在は必要ありません。uidがあるのは非常に一般的です。ただし、たとえば、Firebase での auth0 について説明しているこのブログ投稿では、uid は使用されていません: https://www.firebase.com/blog/2014-06-05-auth0-guest-blog.html

于 2016-01-19T16:58:53.910 に答える