如何在LDAP中删除多个条目中的一个属性
我的objectClass“person”中有一个属性“lastDateConnection”,该属性被移动到数据库中(出于统计、缓存和性能原因)。 这种重复造成混乱 对于一个条目,我只需要这样做:如何在LDAP中删除多个条目中的一个属性,ldap,openldap,Ldap,Openldap,我的objectClass“person”中有一个属性“lastDateConnection”,该属性被移动到数据库中(出于统计、缓存和性能原因)。 这种重复造成混乱 对于一个条目,我只需要这样做: dn: uid=joe,ou=people,ou=application,dc=client,dc=fr changetype: modify delete: dateLastConnection 但我如何才能为LDAP中的所有人做到这一点 以下是我的一些失败:) 或 谢谢,, Amaury当存在
dn: uid=joe,ou=people,ou=application,dc=client,dc=fr
changetype: modify
delete: dateLastConnection
但我如何才能为LDAP中的所有人做到这一点
以下是我的一些失败:)
或
谢谢,,
Amaury当存在已设置的条目时,无法从架构中删除它。您必须将其从这些条目中删除,这需要对每个条目执行修改操作。当存在已设置的条目时,您无法将其从架构中删除。您必须从这些条目中删除它,这需要对每个条目执行修改操作。最后,我做了如下操作:
#!/bin/bash
echo "Suppression des attributs dateLastConnection"
for i in `ldapsearch -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" -b "ou=people,ou=app,dc=client,dc=fr" -s sub "(objectclass=person)" | grep uid=| cut -d : -f 2 | sed 's/^\ //g'`
do
ldapmodify -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" << EOF
dn: $i
changetype: modify
delete: dateLastConnection
EOF
done
#/bin/bash
回显“抑制des属性dateLastConnection”
对于'ldapsearch-x-hlocalhost:389-D“cn=ldapadmin,dc=client,dc=fr”-w“changeme”-b“ou=people,ou=app,dc=client,dc=fr”-s sub”(objectclass=person)| grep uid=| cut-D:-f 2 | sed's/^\//g”`
做
ldapmodify-x-h localhost:389-D“cn=ldapadmin,dc=client,dc=fr”-w“changeme”最后我做了如下操作:
#!/bin/bash
echo "Suppression des attributs dateLastConnection"
for i in `ldapsearch -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" -b "ou=people,ou=app,dc=client,dc=fr" -s sub "(objectclass=person)" | grep uid=| cut -d : -f 2 | sed 's/^\ //g'`
do
ldapmodify -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" << EOF
dn: $i
changetype: modify
delete: dateLastConnection
EOF
done
#/bin/bash
回显“抑制des属性dateLastConnection”
对于'ldapsearch-x-hlocalhost:389-D“cn=ldapadmin,dc=client,dc=fr”-w“changeme”-b“ou=people,ou=app,dc=client,dc=fr”-s sub”(objectclass=person)| grep uid=| cut-D:-f 2 | sed's/^\//g”`
做
ldapmodify-x-h localhost:389-D“cn=ldapadmin,dc=client,dc=fr”-w“changeme”,所以我首先需要获取所有用户名,然后在每个条目上循环以删除该属性?可以在一个ldif中完成吗?所以我首先需要获取所有用户名,然后在每个条目上循环以删除该属性?可以在一个本地设计院(ldif)内完成吗?
#!/bin/bash
echo "Suppression des attributs dateLastConnection"
for i in `ldapsearch -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" -b "ou=people,ou=app,dc=client,dc=fr" -s sub "(objectclass=person)" | grep uid=| cut -d : -f 2 | sed 's/^\ //g'`
do
ldapmodify -x -h localhost:389 -D "cn=ldapadmin,dc=client,dc=fr" -w "changeme" << EOF
dn: $i
changetype: modify
delete: dateLastConnection
EOF
done