Reputation: 57593
Here is a sample of my code
var domainContext = new PrincipalContext(ContextType.Domain, "domain_server_ip",
"domain_admin_username", "domain_admin_password");
var group = GroupPrincipal.FindByIdentity(domainContext, "mygroup");
var users = group.Members.Where(member => names.Contains(member.Name))
.ToList();
users.ForEach(u => group.Members.Remove(u));
group.Save(domainContext); // <-- Here I get the error
Same error if I try to get user groups
var user = UserPrincipal.FindByIdentity(domainContext, "username");
var gps = user.GetGroups(domainContext).ToList(); // <-- Here I get the error
I tried using ContextOptions.SimpleBind
in connection, but nothing changes.
I've also tried setting a container name in connection, but again nothing changes.
Please note that I'm able to retrieve the group and its members... so I don't understand why I can't save the group or read user groups.
Upvotes: 11
Views: 10861
Reputation: 1
i had the same Problem.
the problem in our Case was that the Target was an external Domain Server. The .net Ad Library seems to take explicit the FQDN from the external AD Server (that one that the Server resolves for himself) for some requests and do not respect the FQDN or ip you gave as name to the PrincipalContext ctor in all cases.
so my Client was in x.Domain1, the External Ad Server (server1.x.Domain2) is for Domain x.Domain2.
The standard dns for Domain1 resolved the AdServer as server1.x.Domain1. This Dns don´t know about the Domain2. Thats the issue.
To Resolve this you have imho 3 choices
Upvotes: 0