Azure AD声明-检索用户名

时间:2019-11-03 05:13:31

标签: authentication jwt azure-active-directory claims

我在App Service上有一个Web应用程序,并且正在使用AAD B2C进行身份验证。我唯一的身份提供者是本地帐户-用户注册。我正在尝试从JWT令牌中检索用户的用户名,并将其添加为声明,但不确定在哪里执行此操作。如何添加声明以查找用于注册的用户名?

2 个答案:

答案 0 :(得分:1)

您可以通过将NameClaimType设置为preferred_username来获取用户名

new OpenIdConnectAuthenticationOptions
{
    // other configuration
    TokenValidationParameters = new TokenValidationParameters
    {
        NameClaimType = "preferred_username",
    },          
});

然后

User.Identity.Name

将设置为userName

答案 1 :(得分:0)

不幸的是,用户名不能选择作为要传递给令牌的声明。

此外,Azure AD团队还说这目前不在他们的路线图上。解决方法是通过通过AD图形API进行调用来检索它。

enter image description here

参考:

include username in JWT claims

AD Graph API explorer