Azure AD B2C邀请以访客身份进行管理

时间:2018-11-28 07:16:36

标签: azure azure-active-directory azure-ad-b2c

最近,当尝试邀请来宾用户仅来自特定域的用户来我的Azure AD B2C租户时,我开始出现错误。我邀请的原因是与指定用户共享管理过程。

我遇到的错误是:用户帐户已禁用

到目前为止,我已经尝试过:

  1. 在Azure AD刀片服务器中使用用户> 新来宾用户” UI。
  2. 在Azure AD刀片服务器中使用“ 组织关系> 新来宾用户” UI。
  3. 在Azure AD B2C刀片服务器中使用用户> 新来宾用户”用户界面。
  4. 使用图形API 邀请端点。

观察:仅适用于来自特定域(外部Azure D)的用户,但适用于具有Microsoft帐户的用户。

1 个答案:

答案 0 :(得分:0)

为了所有人的利益,我在咨询Microsoft支持后发布了答案。

有两个可能导致您无法邀请来宾用户访问Azure AD的问题:

  1. 未正确删除用户。当您搜索用户电子邮件时,它可能在UI中不可见,但仍然无法邀请。部分原因是用户界面具有一些有限的搜索功能(精确/以电子邮件或姓名开头)。

解决方案:您可以使用图形API查询用户。您绝对应该尝试根据OtherMails字段寻找用户。

  1. 您要邀请的用户来自Azure AD租户,该租户也是Azure AD B2C中受信任的身份提供程序之一。这就是我发现的实现问题的原因。 当用户第一次使用其Azure AD凭据登录我的应用程序(Azure AD B2C)时,将在Azure AD B2C中自动创建一个“社交帐户”。该帐户是使用UserPrincipalName格式的cpim_guid@yourtenant.onmicrosoft.com创建的,并且AccountEnabled为false(已禁用)。他们的Azure AD电子邮件将位于OtherMails属性中。这就是为什么您无法在用户界面中通过电子邮件找到用户的原因,并且必须知道他们在Azure AD中使用的确切名称才能找到他们。

解决方案:如果您可以在用户界面中找到其MemberType是成员SourceExternal Azure AD的用户,则可以删除用户。如果不是,请使用graph api在OtherMails属性中查询其电子邮件。然后立即邀请用户为访客。他们将再次登录B2C应用程序没有问题,因为social account将自动创建。

注意:确保您不使用Azure AD B2C策略,该策略向使用社交帐户登录的用户添加其他属性。如果是,则需要其他策略来删除用户,以访客身份邀请,重新创建社交帐户并还原其他属性。