У меня есть веб-сайт, который работает в интрасети со встроенной системой безопасности Windows.ASP.NET - Получить группы безопасности для пользователя
<authentication mode="Windows" />
<identity impersonate="true" />
<authorization>
<allow roles="MyDomain\Group1,MyDomain\Group2"/>
</authorization>
Как определить, принадлежит ли текущий пользователь MyDomain \ Group1 или MyDomain \ Group2. Я попытался это ниже, но он выдает ошибку обратно:
PrincipalContext principalContext = new PrincipalContext(ContextType.Domain);
GroupPrincipal group = GroupPrincipal.FindByIdentity(principalContext, "MyDomain\Group1");
PrincipalSearchResult<Principal> user = UserPrincipal.Current.GetGroups();
foreach (Principal principal in group.Members)
{
if (UserPrincipal.Current.Name == principal.Name)
{
// Enable Functionality
break;
}
}
Как определить, является ли текущий пользователь принадлежит MYDOMAIN \ Group1 или MYDOMAIN \ группа_2?
«но он возвращает ошибку», вы забыли указать ошибку –