我的应用程序为组织使用Azure AD的用户支持SSO。用户登录后,将通过AD对其进行身份验证,并且我将在我的SignInCallback方法中提取该用户的电子邮件ID。都是通过参考here上的Identity.Server4源代码来实现的。
我以前将emailId提取为
var emailId = ClaimsPrincipal.Claims.FirstOrDefault(t => t.Type == "email" || t.Type == "emails" || t.Type == "upn").Value;
如果电子邮件ID为“ primary.account@domain.com”的用户通过了AD身份验证,我将获得其电子邮件ID 来自ClaimsPrincipal。
假设同一用户具有另一个电子邮件ID(“ secondary.alias@domain.com”),该ID是其主要电子邮件的别名,并使用该电子邮件登录。
我可以从ClaimsPrincipal获得什么价值? secondary.alias@domain.com还是primary.account@domain.com?