Déterminez si SID est utilisateur ou groupe
Question
est-il possible de déterminer si un SID donné est utilisateur ou groupe utilisant .NET? J'ai une liste de SIDS que j'ai besoin de modifier dans une liste de réception, afin que l'utilisateur et le groupe, je souhaite utiliser différentes icônes
La solution
Vous pouvez l'essayer en utilisant 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;
Vous pouvez trouver une question similaire (et réponse) ici: Comment obtenir les groupes d'un utilisateur dans Active Directory?(c #, asp.net)
Autres conseils
LookupAccountSide () La fonction renvoie la valeur SID_NAME_Utilise indiquant le type du compte.
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow