使用Azure AD B2C进行Firebase身份验证

时间:2019-01-09 08:05:21

标签: firebase firebase-authentication

我有一个用xCode / Swift开发的本地iOS应用程序,该应用程序集成了Firebase Auth SDK,用于注册和登录新用户。 Firebase Auth系统应链接到Azure Active Directory B2C,以便:

  • 已创建的新用户同时存在于Firebase身份验证和Azure AD B2C中(我猜是否具有相同的凭据?)
  • 用户登录时,他/她都在Firebase Auth和Azure AD B2C上下文中登录,因此可以在两个平台上进行安全调用
  • 在Azure AD B2C或firebase Auth上删除用户时,也应该在其他平台上删除用户。 为此,我可以使用在Auth事件上触发的Firebase函数与Azure AD B2C进行同步。对于将Azure AD B2C返回Firebase Auth,我还可以预见一个可以被Azure AD B2C调用的Firebase函数确实会删除用户。

enter image description here

经过研究,我发现Firebase支持“自定义令牌”(请参阅​​https://firebase.google.com/docs/auth/admin/create-custom-tokens)。 这可以提供解决方案吗?我看不到关于创建新用户的任何信息,仅是身份验证...

1 个答案:

答案 0 :(得分:2)

“我和我”团队针对自定义令牌开发了针对此确切场景的解决方案。我们的实施自几个月以来一直在Azure上运行,现在我们还没有任何问题。

以下是流程:

enter image description here

注意:

  1. Azure B2C可以用任何STS代替。
  2. Azure功能可以由任何后端进程替换。

此外,好处是您不必在Firebase中维护用户,因为您无需创建Firebase用户,而只需使用自定义令牌即可,因此无需删除用户。