我想创建一个新的 Active Directory 组。
这是我的代码:
PrincipalContext ctx = new PrincipalContext(ContextType.Domain, domain, container, userName, password);
GroupPrincipal oGroupPrincipal = new GroupPrincipal(ctx, userName);
DirectoryEntry entry = new DirectoryEntry("LDAP://" + domain, userName, password,AuthenticationTypes.Secure);
if (entry.Children.Find("CN=" + groupName) != null) {
}
if (!DirectoryEntry.Exists("LDAP://" + System.Configuration.ConfigurationManager.AppSettings["Domain"] + "/CN=" + groupName + "," + System.Configuration.ConfigurationManager.AppSettings["Container"]))
{
oGroupPrincipal.Description = groupName;
oGroupPrincipal.GroupScope = (System.DirectoryServices.AccountManagement.GroupScope)Enum.Parse(typeof(System.DirectoryServices.AccountManagement.GroupScope), groupScope);
oGroupPrincipal.IsSecurityGroup = isSecurity;
oGroupPrincipal.Save(ctx);
}
我遇到问题的部分是在创建之前查看新创建的组是否存在。在这个阶段,我的代码返回所有组都存在,因此我无法创建组
这是检查组是否存在:
if (entry.Children.Find("CN=" + groupName) != null) {
}
但它给出了一个例外服务器上没有这样的对象。
任何帮助,将不胜感激。