Active directory 如何使用LDIF添加用户成员资格?

Active directory 如何使用LDIF添加用户成员资格?,active-directory,ldap,ldif,Active Directory,Ldap,Ldif,我正在尝试使用LDIF向现有用户组添加用户成员身份 示例: dn: CN=Domain Users,CN=Users changeType: Modify add: member member: CN=SomeCN1 member: CN=SomeCN2 member: CN=SomeCN3 member: CN=SomeCN4 除了其中一个成员身份已经存在外,所有这些都可以正常工作。例如,如果SomeCN2成员资格已经存在,则整个语句将失败,并且不会添加任何成员资格。这是“修改”变更类型的函

我正在尝试使用LDIF向现有用户组添加用户成员身份

示例:

dn: CN=Domain Users,CN=Users
changeType: Modify
add: member
member: CN=SomeCN1
member: CN=SomeCN2
member: CN=SomeCN3
member: CN=SomeCN4
除了其中一个成员身份已经存在外,所有这些都可以正常工作。例如,如果SomeCN2成员资格已经存在,则整个语句将失败,并且不会添加任何成员资格。这是“修改”变更类型的函数。。。我尝试过如何以不同的方式设置LDIF的格式,但似乎无法理解。我为每个会员都想了一份声明,但这会导致我的文件庞大且难以管理,这并不理想


如何构造成员资格语句以添加所有成员资格,而不管其中一个成员资格是否已存在?

LDAP对象中的多值属性必须具有唯一的值,即多值属性的每个值必须不同于该对象中属性的任何其他值。LDIF输入的任何结构都不能改变这一点

  • 我见过应用程序删除多值属性的所有值,然后添加所需的值(在本例中,没有多值属性)。在某些情况下,如果组是其成员的对象类需要多值属性,则可以删除整个组,然后将其添加回

  • 显然,#1是一个不符合标准的解决方案(尽管通过使用LDAP事务可以让它更受欢迎,其中组作为单个事务的一部分被删除和添加,但这可能不可用,因为世界上到处都是不支持事务的低质量服务器和API)。LDAP客户机最好检索组中的所有成员,然后根据这些知识,只添加组中不存在的属性值