首页 > 解决方案 > 从特定标题和组创建新组

问题描述

我真的不擅长 LDAP,所以我真的不知道从哪里开始。

是否可以与具有特定标题的另一个组的用户创建一个新的分发或安全组?用户太多,无法手动添加。

标签: active-directoryldap

解决方案


了解您希望如何与 AD 交互会很有帮助——编写程序(语言?)或使用 LDAP 客户端(哪个?)。我将提供有关从远程服务器管理工​​具中使用 ldifde.exe 的信息。要获取另一个组中具有特定标题的 DN 列表,请使用具有标题和成员资格要求的过滤器

ldifde -f output.txt -r "(&(title=Desired Title)(memberOf=cn=GroupName,ou=Groups,dc=example,dc=com))" -l "NULL"

这将返回作为指定组的直接成员的用户记录(您需要组的完全限定 LDAP DN,memberOf 不支持通配符——示例是名为“Groups”的 OU 中名为“GroupName”的组在 example.com AD 的根目录)。

然后,您需要创建一个新组,其中已识别的用户 DN 作为成员。output.txt 文件将有很多行说“changetype: add\n\n”...去掉那些,这样你就得到了 DN。将“dn:”更改为“member:”。将以下信息添加到组成员列表以创建 LDIF 文件以创建新的全局安全组:

dn: CN=GroupName,OU=Groups,dc=example,dc=com
changetype: add
objectClass: group
cn: GroupName
distinguishedName: CN=GroupName,OU=Groups,dc=example,dc=com
instanceType: 4
name: GroupName
sAMAccountName: GroupName
groupType: -2147483646
objectCategory: CN=Group,CN=Schema,CN=Configuration,dc=example,dc=com
member: CN=Person1,OU=ResourceUsers,dc=example,dc=com
member: CN=Person2,OU=ResourceUsers,dc=example,dc=com
member: CN=Person3,OU=ResourceUsers,dc=example,dc=com
member: CN=Person4,OU=ResourceUsers,dc=example,dc=com
member: CN=Person5,OU=ResourceUsers,dc=example,dc=com

使用以下命令导入 LDIF 文件:

ldifde -i -v -k -y -f output.txt

该组将使用“成员”属性中列出的帐户创建和填充。

如果您将一个新人添加到具有所需标题的第一个组中,这不会做任何事情——这是一次性快照。您可以轻松识别应该从第二组中添加/删除的人员

需要添加 - 具有所需头衔且是 SourceGroupName 成员但不是 CreatedGroupName 成员的任何人:

(&(title=Desired Title)(memberOf=cn=SourceGroupName,ou=Groups,dc=example,dc=com)(!(memberOf=cn=CreatedGroupName,ou=Groups,dc=example,dc=com)))

需要删除 - CreatedGroupName 成员但不是 SourceGroupName 成员或没有所需头衔的任何人。

(&(memberOf=cn=CreatedGroupName,ou=Groups,dc=example,dc=com)(|(!(title=Desired Title))(!(memberOf=cn=SourceGroupName,ou=Groups,dc=example,dc=com))))

当个人匹配这两个过滤器之一时,从新组中添加/删除成员。


推荐阅读