Como alterar um valor de atributo para todas as entradas do diretório ldap usando o comando ldapmodify?

1

LDAP: Como modificar um valor de atributo para todas as entradas do diretório usando o comando ldapmodify? Procurando por alguma sintaxe como abaixo no arquivo de entrada de modificação para o comando ldapmodify

dn: uid = *, ou = Pessoas, dc = exemplo, dc = com
changetype: modificar
add: customerNumber
customerNumber: 12345
-
add: accountNumber
accountNumber: 12345

    
por Srini 06.03.2015 / 20:23

1 resposta

1

Isso não pode ser feito com apenas ldapmodify, mas você pode juntar algumas coisas para fazer o que você está pedindo. As seguintes execuções ldapmodify contra um arquivo ldif que construímos em tempo real de um ldapsearch mais as modificações desejadas.

ldapmodify -f <(ldapsearch -LLL -b ou=People,dc=example,dc=com -s one uid=* dn | sed 's/^$/add: customerNumber\ncustomerNumber: 12345\n-\nadd: accountNumber\naccountNumber: 12345\n-\n/' )

Nota: Isso fornece a todas as entradas correspondentes o mesmo número de cliente e número de conta. Se não é isso que você quer, você terá que usar algo mais complicado que sed , talvez awk ou perl . Além disso, provavelmente é complicado o suficiente para que você queira fazer isso em mais de uma linha primeiro. Faça o ldif, revise e execute ldapmodify.

    
por 09.03.2015 / 05:29