如何从C#MVC.net core中的用户名(标识名)中获取Azure AD用户组名称?
我有以下代码片段来检索我使用Azure AD登录应用程序时使用的AD用户名,但我找不到与用户名对应的组名 如何从用户名中获取组名如何从C#MVC.net core中的用户名(标识名)中获取Azure AD用户组名称?,c#,asp.net-mvc,azure-active-directory,C#,Asp.net Mvc,Azure Active Directory,我有以下代码片段来检索我使用Azure AD登录应用程序时使用的AD用户名,但我找不到与用户名对应的组名 如何从用户名中获取组名 var ClaimsPrincipal = HttpContext.User; var ci =(System.Security.Claims.ClaimsIdentity) ClaimsPrincipal.Identity; var name= ci.Name.Split('@')[0]; //This gives the user name var group
var ClaimsPrincipal = HttpContext.User;
var ci =(System.Security.Claims.ClaimsIdentity) ClaimsPrincipal.Identity;
var name= ci.Name.Split('@')[0]; //This gives the user name
var groups = ci.FindAll(ClaimTypes.GroupSid);
var g2 = ci.Claims.Where(x => x.Type.Equals("groups")).ToList();
它不会返回组名 我假设您已在清单中将
groupMembershipClaims
属性设置为SecurityGroup
然后,您应该能够通过代码获取组id
在那之后,你需要
您可以根据组id获取详细的组信息(包括组名称)。GraphServiceClient graphClient=new GraphServiceClient(authProvider);var group=wait graphClient.Groups[“GroupId”].Request().GetAsync();但我无法添加Graph.Auth的add numget,因为它在numget中不可用,这是var app=InteractiveAuthenticationProvider.CreateClientApplication(“”)所需的//var authProvider=新的InteractiveAuthenticationProvider(应用程序,新字符串[]{“User.Read”});这里的任何帮助都将不胜感激。