Определите, является ли SID пользователем или группой - PullRequest
2 голосов
/ 11 марта 2012

Можно ли определить, является ли данный SID пользователем или группой с использованием .NET? У меня есть список SID, которые мне нужно отредактировать в виде списка, поэтому для пользователя и группы я хочу использовать разные значки

Ответы [ 2 ]

1 голос
/ 26 июня 2012

Вы можете попробовать это с помощью System.DirectoryServices.AccountManagement:

//Get NTAccount, to find out username and domen
NTAccount nt = (NTAccount)sid.Translate(typeof(NTAccount));
string[] fullName = nt.Value.Split(new char[] { '\\' });

//then get group principle
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, fullName[0]);
GroupPrincipal grp = GroupPrincipal.FindByIdentity(ctx, IdentityType.Name, fullName[1]);

//and check whenever this group exists
bool SidIsAGroup = grp != null;

Подобный вопрос (и ответ) вы можете найти здесь: Как получить группы пользователей в Active Directory? (c #, asp.net)

0 голосов
/ 25 июня 2013

Функция LookupAccountSid () возвращает значение SID_NAME_USE, которое указывает тип учетной записи.

...