Мне нужно проверить пользователя с Active Directory и проверить его группы. Проблема в том, что пользователь возвращает несколько UserPrincipal. Администраторы не могут найти проблему с этим пользователем. Мой код прост:
var usr = UserPrincipal.FindByIdentity(context, username);
Теперь я знаю, что могу это сделать;
var usr = new WindowsPrincipal(WindowsIdentity.GetCurrent());
if (usr.IsInRole("MyRole")
{
//Do stuff
}
Это работает для текущего пользователя, вошедшего в систему, однако бывают случаи, когда мне нужно аутентифицировать пользователей, которые в данный момент не вошли в систему