Azure AD 作为 Azure ADB2C 的 OpenID Connect 提供者

Azure AD as an OpenID Connect Provider for an Azure ADB2C

我有一个名为 FOOAzure AD,那里有很多用户。我在 FOO 目录中创建了一个 Azure ADB2C 作为资源,名为 BAR,我想在其中 signUp/signIn 用户。但是,如果您已经是 FOO 的用户,我希望您能够通过 Identity Provider.

进行连接

这可能吗?我没能完成这项工作。我目前正在关注这些文档:

1 这似乎适用于 FOO ADFOO ADB2C

2这似乎符合我的情况。

3 这似乎适用于 FOO ADB2CBAR ADB2C

即使第二个文档符合我的情况,我也看到必须使用自定义策略,我不喜欢。有什么解决方法吗?有人遇到过这种情况吗?

由于您使用的是登录流程,Azure AD B2C 期望用户对象存在于 B2C 目录中。

您必须:

  1. 使用 signin/signup 流程让 B2C 创建用户(如果用户尚不存在)
  2. 使用允许本地用户登录的自定义策略 + 为您的 AAD 用户创建用户对象(如果它们尚不存在)

您还可以添加自定义 OIDC 身份提供商

  1. 在您的 FOO 目录中注册将代表 AAD B2C 的新应用程序,并生成客户端密码(不要忘记将其保存在某处)- 这和应用程序 ID 需要在下一步中添加
  2. 在 BAR 租户中添加新身份提供者作为 OIDC(LHS 上的身份提供者)
  3. 在元数据字段粘贴https://login.microsoftonline.com/FOO.onmicrosoft.com/v2.0/.well-known/openid-configuration
  4. 为域提示设置 FOO,为用户 ID 设置 oid,为显示名称设置名称,为给定名称设置 given_name,为姓氏设置 family_name,为电子邮件设置 unique_name(在我的案件) 之后,您应该能够选择您的 FOO 租户作为用户流中的附加按钮,就像 Google、Facebook 或您在那里拥有的任何东西一样

另一种选择是使用自定义策略。