Azure B2C 多租户"google"用户创建和租户 ID 声明



目前,我们的团队正在为我们的多租户应用程序的Azure B2C解决方案的proper架构而苦苦挣扎。

这就是我们想要实现的目标。我们希望允许来自某些Azure AD的用户进行身份验证。这里用我们想要启用的限制租户很好地描述了这一点。

我们只是想用谷歌身份验证来丰富这个解决方案。我们不希望所有用户都能够注册。有没有可能通过程序创建谷歌联合用户?我们基本上收到客户公司的电子邮件列表,并在租户中创建帐户(。据我所知,当我没有用户的issuerUserId时,使用ms-graph API是不可能实现这一点的。

对于这种情况,我们有任何可能的解决方案吗?喜欢邀请电子邮件吗?或者,在这种情况下,B2C可能不是一个合适的解决方案。

提前感谢

一个解决方案是在图形api中将b2c中允许的用户创建为本地帐户,accountEnabled为false,并生成一些密码。由于accountEnabled为false,用户将无法登录或重置密码,因为默认的自定义策略集会验证该属性。

在自定义策略中的联邦流中,

  1. 让用户完成联合
  2. 使用收到的电子邮件地址读取帐户
  3. 如果存在本地帐户,则链接联合帐户(使用objectId将alternateSecurityId写入帐户(
  4. 如果找不到匹配的本地帐户,请通过显示selfAssertied页面来阻止用户,说明不允许您注册/登录此应用程序
  5. 您还可以为本地帐户设置一些自定义布尔扩展属性,以进行额外的验证,并在用户完成注册后更新其值

最新更新