【问题标题】:Change value of a single attribute for multiple UID's at once in LDAP在 LDAP 中一次更改多个 UID 的单个属性的值
【发布时间】:2020-11-26 18:25:49
【问题描述】:

我有一个 LDAP 中存在的几个用户的 uid 列表,我需要将所有这些 uid 的一个属性的值替换为一个新值。有没有办法通过 Apache Directory Studio 立即完成此操作,而无需手动编辑每个条目。我对此很陌生,这不是我的专业领域。另外,我知道只有 Apache Directory Studio 可以使用 LDAP 值。如果有人可以提供相同的输入,那就太好了。

【问题讨论】:

    标签: ldap forgerock apache-directory


    【解决方案1】:

    在 Apache Directory Studio 中,您可以右键单击连接并选择“导入”,然后选择“LDIF 导入”。该文件看起来像这样

    dn: cn=user1FQDN,ou=OrgUnit,o=MyOrg
    changetype: modify
    replace: TheAttribute
    TheAttribute: NewValue
    -
    
    dn: cn=user2FQDN,ou=OrgUnit,o=MyOrg
    changetype: modify
    replace: TheAttribute
    TheAttribute: NewValue
    -
    
    dn: cn=user3FQDN,ou=OrgUnit,o=MyOrg
    changetype: modify
    replace: TheAttribute
    TheAttribute: NewValue
    -
    

    当我尝试在许多帐户上设置相同的值时,我将编写一个快速脚本来获取用户 DN 列表并编写其余的 LDIF 内容。

    其中“dn”值是每个用户的完全限定 DN,TheAttribute 是您要更新的属性的名称,NewValue 是您要写入 TheAttribute 的值。

    使用 LDIF 导入更改时要小心——您可以很快地引入大量更改,但也可能很快搞砸大量帐户。您需要了解更新 attribute 的“changetype: modify”(更新可能是删除属性,但 changetype 仍然是 modify)和删除 属性的“changetype: delete”之间的区别em>对象。您还需要了解如何修改/删除操作。使用“changetype: modify”和“delete: TheAttribute”会删除属性中的所有内容

    dn: cn=user1FQDN,ou=OrgUnit,o=MyOrg
    changetype: modify
    delete: TheAttribute
    -
    

    如果要删除多值属性的单个值,需要使用:

    dn: cn=user1FQDN,ou=OrgUnit,o=MyOrg
    changetype: modify
    delete: TheAttribute
    TheAttribute: ValueToDelete
    -
    

    指定哪个要删除的属性。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-02
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2023-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多