KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I am trying to get all Active Directory groups for a user, with the following code: private static IEnumerable<string> GetGroupNames(string userName) { using (var context = new PrincipalContext(ContextType.Domain)) { using (var userPrincipal = UserPrincipal.FindByIdentity(context, userName)) { var groupSearch = userPrincipal.GetGroups(context); var result = new List<string>(); foreach (var principal in groupSearch) { Log.LogDebug("User {0} is member of group {0}", userPrincipal.DisplayName, principal.DisplayName); result.Add(principal.SamAccountName); } return result; } } } This code correctly finds the user principal, but fails when GetGroups is called with a PrincipalOperationException: Unknown error (0x80005000). Root exception: at System.DirectoryServices.AccountManagement.ADStoreCtx.GetGroupsMemberOf(Principal foreignPrincipal, StoreCtx foreignContext) at System.DirectoryServices.AccountManagement.Principal.GetGroupsHelper(PrincipalContext contextToQuery) at System.DirectoryServices.AccountManagement.Principal.GetGroups(PrincipalContext contextToQuery) at [line of the GetGroup call] Inner exception (COMException): at System.DirectoryServices.DirectoryEntry.Bind(Boolean throwIfFail) at System.DirectoryServices.DirectoryEntry.Bind() at System.DirectoryServices.DirectoryEntry.get_AdsObject() at System.DirectoryServices.PropertyValueCollection.PopulateList() at System.DirectoryServices.PropertyValueCollection..ctor(DirectoryEntry entry, String propertyName) at System.DirectoryServices.PropertyCollection.get_Item(String propertyName) at System.DirectoryServices.AccountManagement.ADUtils.RetriveWkDn(DirectoryEntry deBase, Str
Tags (comma-separated)
Save Edits
Cancel