如何删除AD组

时间:2016-10-20 22:59:00

标签: c# active-directory

问题: 如何从活动目录中删除组?

我尝试了什么:

1。 PrinipalContext

我正在尝试删除活动目录组。我现在有这个:

using (var ctx = new PrincipalContext(ContextType.Domain, myDomain, ldapUser, ldapPassword))
{
    var group1 = new GroupPrincipal(ctx, groupName);
    group1.Delete();
}

但我收到错误:"Unpersisted Principal objects can not be deleted."

这导致我here,但我不知道invoke魔法究竟是什么,这让我有点害怕。

2。 DirectoryEntry

http://www.codeproject.com/Articles/18102/Howto-Almost-Everything-In-Active-Directory-via-C#33

但我一直收到"The server is not operational"错误。

我只需要删除AD群,是否可以?

1 个答案:

答案 0 :(得分:0)

事实证明DirectoryEntry工作正常,但我的ldap网址错误。这是我最终使用的代码:

using (var ou = new DirectoryEntry(ouPath, ldapUser, ldapPassword))
{
     using (var group = new DirectoryEntry(groupPath, ldapUser, ldapPassword))
     {
          ou.Children.Remove(group);
          group.CommitChanges();
     }
}

错误的旧价值

ouPath LDAP://myDomain.local/OU=myTier1,DC=myDomain,DC=local

groupPath LDAP://groupname/OU=myTier3,OU=myTier2,OU=myTier1,DC=myDomain,DC=local

正确的新价值

ouPath LDAP://myDomain.local/OU=myTier2,OU=myTier1,DC=myDomain,DC=local

groupPath LDAP://myDomain.local/CN=groupName,OU=myTier3,OU=myTier2,OU=myTier1,DC=myDomain,DC=local