【发布时间】:2020-01-17 12:42:45
【问题描述】:
我使用 Azure AD B2C 身份验证。
var Claims = User.Claims;
var ClientIdClaim = Claims.SingleOrDefault(c => c.Type == ClaimTypes.NameIdentifier);
将对象 ID 还给我。但我还需要用户名。如何访问用户名(标记为黄色)?
【问题讨论】:
-
通常用户名将存储在
Name声明类型中。所以你应该使用var username = Claims.SingleOrDefault(c => c.Type == ClaimTypes.Name);找到它 -
它返回 null
-
您是否使用 Azure 门户中的“立即运行”链接测试了您的策略?如果您将应用程序注册的回复 URL 配置为 jwt.ms,您将在使用“立即运行”链接后看到生成的令牌。然后,您可以确定电子邮件是否甚至被返回到您的令牌中。如果没有,您需要先配置它。这取决于您使用的是内置策略还是自定义策略。
-
如果答案对您有帮助,您可以接受它作为答案。这对其他社区成员可能是有益的。谢谢。
标签: asp.net-mvc asp.net-core azure-ad-b2c