将用户的 DN 从使用 CN 更新为使用 UID
Updating a user's DN from using CN to using UID
我正在寻找一种方法来更新用户的条目 DN:
dn: cn=Super,ou=Prod,ou=clients,dc=test,dc=com
对此:
dn: uid=SuperUID,ou=Prod,ou=clients,dc=test,dc=com
鉴于我的目录有多个ou,有些已经在他们的DN中使用了UID属性,所以我只需要更新这个ou。
另外,我的 ldap 服务器是 运行 openDJ。
我一直在这里和其他地方搜索,但找不到任何有效的答案。
我不断收到此错误:
Result Code: 65 (Object Class Violation)
Additional Information: The modify DN operation for entry [...] cannot be performed because the change would have violated the server schema: Entry [...] violates the Directory Server schema configuration because it is missing attribute cn which is required by objectclass person
我理解(嗯,有点)这个错误告诉我的是什么,但是我找不到解决这个问题的方法...
谢谢
您必须使用 ModDN 重命名条目。但是为了使条目符合模式(因为您正在更改命名属性),您必须保留以前的值。
以下更改将起作用:
ldapmodify -D cn=directory\ manager -w password -h localhost -p 1389
dn: cn=Super,ou=Prod,ou=clients,dc=test,dc=com
changetype: moddn
newrdn: uid=SuperUID
deleteoldrdn: false
您稍后可以使用修改操作修改 cn 属性以更改其值。
我正在寻找一种方法来更新用户的条目 DN:
dn: cn=Super,ou=Prod,ou=clients,dc=test,dc=com
对此:
dn: uid=SuperUID,ou=Prod,ou=clients,dc=test,dc=com
鉴于我的目录有多个ou,有些已经在他们的DN中使用了UID属性,所以我只需要更新这个ou。 另外,我的 ldap 服务器是 运行 openDJ。
我一直在这里和其他地方搜索,但找不到任何有效的答案。
我不断收到此错误:
Result Code: 65 (Object Class Violation)
Additional Information: The modify DN operation for entry [...] cannot be performed because the change would have violated the server schema: Entry [...] violates the Directory Server schema configuration because it is missing attribute cn which is required by objectclass person
我理解(嗯,有点)这个错误告诉我的是什么,但是我找不到解决这个问题的方法...
谢谢
您必须使用 ModDN 重命名条目。但是为了使条目符合模式(因为您正在更改命名属性),您必须保留以前的值。 以下更改将起作用:
ldapmodify -D cn=directory\ manager -w password -h localhost -p 1389
dn: cn=Super,ou=Prod,ou=clients,dc=test,dc=com
changetype: moddn
newrdn: uid=SuperUID
deleteoldrdn: false
您稍后可以使用修改操作修改 cn 属性以更改其值。