gpt4 book ai didi

c# - 获取登录用户 O365/webforms 的电子邮件地址

转载 作者:太空狗 更新时间:2023-10-29 21:59:56 26 4
gpt4 key购买 nike

我有一个具有 O365 身份验证的 Web 表单站点,我在构建项目时使用 Visual Studios 内置选项添加了身份验证。

VS Authentication

这非常有效,但我想做的是,它获取登录用户的电子邮件地址,并根据登录用户显示不同的链接集或不同的页面。

我该怎么做呢?

最佳答案

如果基础 ADFS 没有通过电子邮件声明,您将无法看到电子邮件的详细信息。首先,如果您能够登录,我建议您打印出您收到的声明。有关阅读所有声明的一种实现方式,请参见以下链接:

Access Claim values in controller in MVC 5

如果电子邮件声明不存在,则需要请求 ADFS 管理员通过电子邮件声明。这是有关如何通过电子邮件声明的引用链接: https://learn.microsoft.com/en-us/azure/architecture/multitenant-identity/adfs

如果存在电子邮件声明,则声明类型为电子邮件 (http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress)。如果是,那么您应该能够使用 ClaimTypes.Email 属性。但如果不是,则最简单的方法是要求 ADFS 管理员将声明类型转换为电子邮件地址声明类型。更难的方法是使用 ClaimTransformationManager ( https://learn.microsoft.com/en-us/dotnet/framework/security/how-to-transform-incoming-claims )。

希望对您有所帮助。

干杯,乌芒

关于c# - 获取登录用户 O365/webforms 的电子邮件地址,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49115361/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com