8

私は客観的な c iOS アプリに取り組んでいます。認証 ( https://auth0.com/ )に auth0 を使用し、データベース バックエンドに Firebase を使用したいと考えています。

私はすべての auth0 ドキュメントに目を通しましたが、次の認証が機能しています。

Facebook、Google+、Twitter、自己登録。

問題: ドキュメントは、認証モデルを Firebase と統合する必要がある時点でちょっと落ち込んでいます。この 1 ページしか表示されず、今何をすべきかよくわかりません。誰かが以前にこの統合を行ったことがありますか?この道を案内してもらえますか? 私はこれでちょっと新しいです。

Blockquoteトークン コンテンツの構成

ダッシュボードに登録されている他の A​​PI と同様に、Auth0 は Delegation エンドポイントを介して Firebase トークンを発行します。これにより、トークンを別のトークンと交換できます。

Firebase トークンのコンテンツは慣例に従って生成され、委譲呼び出しで使用される入力トークンの firebase_data 属性に含まれるすべてのプロパティをコピーします。

これらは、ルールを使用して非常に簡単に生成できます。

user.firebase_data = {
  user_id: new Buffer(user.email).toString('base64'),
  company: !user.isSocial ? context.connection.replace(/\./g, '-') : null,
  foo: 'bar'
};

上記の例では、委譲 endopint を呼び出した後に user_id と company の 2 つのプロパティが生成され、両方とも Firebase で使用できるようになります。

引用符

4

1 に答える 1

3

ios/Objective C ではなく、ブラウザーの Javascript に対してこれを行いました。しかし、概念としては、次の 4 つのことを行う必要があります。

設定

  1. Firebase 委任を許可するように Auth0 アカウントを構成し、Firebase トークンを提供します。この部分は、Firebase タブの Auth0 の ios/objective C docs for Firebaseでカバーされています。
  2. (オプション) Auth0 ルールを作成して、委任された Firebase トークンにプロパティを設定します。上記のスニペットにこれがあります。

Firebase Token プロパティを設定するための Auth0 ルール:

user.firebase_data = {
  user_id: new Buffer(user.email).toString('base64'),
  company: !user.isSocial ? context.connection.replace(/\./g, '-') : null,
  foo: 'bar'
};

ここで設定したプロパティは、Firebase セキュリティ ルールで使用できます。

認証フロー

Auth0 には、役に立つと思われる迅速なサンプルがあります。次の 2 つのことを行う必要があります。

  1. ユーザーが正常に認証されたら、Auth0 から委任された Firebase アクセス トークンに対して 2 番目の Auth0 リクエストを行います。サンプル ライン 65を参照してください。
  2. authWithCustomToken メソッドを介して Firebase オブジェクトで新しい委任されたトークンを使用します。サンプル ライン 73を参照してください。
于 2015-02-10T21:41:13.080 に答える