ASP.NET核心Web应用程序的Azure AD身份验证

ASP.NET核心Web应用程序的Azure AD身份验证,azure,azure-active-directory,Azure,Azure Active Directory,我正在开发一个具有Azure AD身份验证的ASP.Net核心web应用程序,当用户登录时,我需要获取他所属的所有组及其基本详细信息,如有任何线索,将不胜感激 提前感谢。组ID作为声明提供,声明是您从Azure AD获得的身份验证令牌的一部分。特定声明名称为“组” 在您的.NET代码中,它将作为用户索赔的一部分提供 以下示例代码显示了如何根据登录用户的组在应用程序中执行或限制不同的操作- 特别是要查找登录用户所属的组,请查看共享示例中的此代码- public class ClaimHelper

我正在开发一个具有Azure AD身份验证的ASP.Net核心web应用程序,当用户登录时,我需要获取他所属的所有组及其基本详细信息,如有任何线索,将不胜感激


提前感谢。

组ID作为声明提供,声明是您从Azure AD获得的身份验证令牌的一部分。特定声明名称为“组”

在您的.NET代码中,它将作为用户索赔的一部分提供

以下示例代码显示了如何根据登录用户的组在应用程序中执行或限制不同的操作-

特别是要查找登录用户所属的组,请查看共享示例中的此代码-

public class ClaimHelper
    {
        public static async Task<List<string>> GetGroups(ClaimsIdentity claimsId)
        {
            if (claimsId.FindFirst("_claim_names") != null
                && (Json.Decode(claimsId.FindFirst("_claim_names").Value)).groups != null)
                return await GetGroupsFromGraphAPI(claimsId);

            return claimsId.FindAll("groups").Select(c => c.Value).ToList();
        }
公共类ClaimHelper
{
公共静态异步任务GetGroups(ClaimsIdentity claimsId)
{
if(claimsId.FindFirst(“\u claim\u names”)!=null
&&(Json.Decode(claimsId.FindFirst(“\u claim\u names”).Value)).groups!=null)
return wait GetGroupsFromGraphAPI(claimsId);
返回claimsId.FindAll(“组”).Select(c=>c.Value.ToList();
}
这里有一个链接,解释所有不同的索赔将提供给你。-

名字、姓氏、对象Id、组和用户主体名称可能会为您提供所需信息。

请阅读[此处](如何提问?)并编辑您的问题。