【问题标题】:Azure AD appending '#EXT#' to UserPrincipalNameAzure AD 将“#EXT#”附加到 UserPrincipalName
【发布时间】:2016-03-01 16:13:08
【问题描述】:

当我们使用 Graph API 在 Active Directory 中创建用户时,一些字符会附加到用户名 (#EXT#)。这使得无法在 AD B2C 的界面 (documented problem) 中编辑用户或使用 ADAL 2.23(Active Directory 身份验证库)进行登录。

特别是,当我们使用AcquireToken(username, password) 方法时,会出现错误(unknown_user_type)。错误如下:

为什么会这样?这个问题有什么解决方案或解决方法吗?

问候。

【问题讨论】:

  • 用户是否来自外部提供商? AAD 已将一个类似的字符串附加到与之连接的我的 Microsoft 帐户中。 AAD 本身无法直接对用户进行身份验证,它需要重定向用户以在其提供商处登录。
  • @juunas 是的,因为 Graph API 是另一个应用程序。有什么解决办法吗?
  • 这是设计使然,在 B2C 限制中提到,此字段实际上是 UPN,不应显示。
  • @MauricioUlloa 我已编辑标题以反映添加#EXT# 的不是Azure AD Graph API,而是Azure AD 本身。

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


【解决方案1】:

在其 UserPrincipalName(UPN,在多个地方也被含糊地称为“用户名”)中包含 #EXT# 的用户通常是来自其他身份提供者的用户。这包括:

  1. 常规目录:使用其 Microsoft 帐户 (MSA) 添加的用户
  2. 常规目录:来自 Azure AD 中其他目录的用户
  3. B2C 目录:几乎所有 B2C 用户都有这个

常规目录

如果您的应用程序知道用户尝试登录的 Azure AD 目录,并且您使用的是特定于租户的端点 https://login.microsoftonline.com/&lt;<i>domain or ID</i>&gt;,而不是与租户无关的端点 @ 987654323@,情况 (1) 和 (2) 中的用户应该能够使用 ADAL 登录应用程序。登录时,他们将使用 MSA 或其“主”目录中的常规用户名。

示例:来自目录contoso 的用户bob@contoso.com 被添加为目录fabrikam 中的外部用户。这会导致fabrikam 中的用户使用UPN bob_contoso.com#EXT#@fabrikam.onmicrosoft.com,但您不必担心这一点。当他们登录到信任 https:/login.microsoftonline.com/fabrikam.onmicrosoft.com 的应用程序时,他们只需以 bob@contoso.com 的身份登录并使用来自 contoso 的普通密码。

B2C 目录

Azure AD B2C 感知应用程序始终使用特定于租户的端点,但它使用较新的“v2”OAuth 2.0 端点:

  • https://login.microsoftonline.com/&lt;<i>domain or ID</i>&gt;/oauth2/v2.0/authorize
  • https://login.microsoftonline.com/&lt;<i>domain or ID</i>&gt;/oauth2/v2.0/token

再次重申——用户将始终使用其家庭身份提供者登录。

重要提示:请记住,Azure AD B2C 当前处于预览版(截至 2106 年 3 月)。

TL;DR

如果用户的 UserPrincipalName 包含 #EXT#,则实际上不应该有任何需要更改的情况,因为这意味着这实际上不是他们在登录时输入的用户名。

【讨论】:

  • 感谢您的回答。问题不在于编辑 UPN,而在于编辑任何字段或尝试使用 ADAL 登录。
  • 以上三种情况你适合哪一种?您是在关注任何现有的示例,还是从头开始?
  • 我们的案例是第三个。谢谢!
  • @MauricioUlloa 您要使用什么版本的 ADAL?您可以编辑您的帖子以包含您观察到的特定错误消息吗?
  • 在我的例子中,用户在 Azure AD 存在之前创建了一个 MS 帐户。现在,来自新目录contoso 的所有用户都保持为bob#EXT#@contoso.com 一样,我不知道如何将它们转换为内部用户。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-03-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多