Firebase + auth0身份验证

调音

我正在开发Objective-C iOS应用。我想使用auth0进行身份验证(https://auth0.com/),并且要使用Firebase进行数据库后端。

我已经阅读了所有的auth0文档,并且身份验证适用于:

Facebook,Google +,Twitter,自我注册。

问题:在我需要将身份验证模型与Firebase集成时,文档有点落空,它给了我一页,而我现在还不确定现在该怎么做。以前有人进行过这种集成吗?您能带我走这条路吗?我有点新。

Blockquote配置令牌内容

与在dahsboard中注册的任何其他API一样,Auth0将通过委派终结点发出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,并且这两个属性将对Firebase可用。

块引用

詹姆士

我已经在浏览器(而不是ios / Objective C)中针对Javascript进行了此操作。但是从概念上讲,您需要做四件事:

建立

  1. 配置您的Auth0帐户以允许Firebase委派,并提供您的Firebase令牌。在Firebase标签上,适用于FirebaseAuth0的ios /目标C文档涵盖了这一部分
  2. (可选)创建Auth0规则以设置委派的Firebase令牌的属性。您在上面的代码段中有这个。

设置Firebase令牌属性的Auth0规则:

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

您在此处设置的属性将在Firebase安全规则中可用。

认证流程

Auth0的样本迅速,这可能对您有帮助。您需要做两件事:

  1. 用户成功进行身份验证后,再次从Auth0请求授权的Firebase访问令牌的Auth0请求,请参见示例行65
  2. 通过其authWithCustomToken方法将新的委托令牌与Firebase对象一起使用,请参见示例行73

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章