Você precisa
- conceda pelo menos
search
para a entrada da raiz de pesquisadc=example,dc=com
- conceda
read
para o pseudo-atributo entrada da entrada que contém o atributo PublicKey
Estou tentando fazer o seguinte: Eu tenho o servidor 2,4145 openLDAP (teste), que contém usuários, grupos como este:
o=Example(dc=example,dc=com)
ou=users
uid=alice
uid=bob
PublicKey="...."
ou=Groups
cn=group1
cn=group2
Eu preciso conectar um aplicativo a esse servidor. Alguns usuários em DIT têm um publicKey (como bob), o que eu quero é que o bind anônimo possa obter PublicKey de qualquer usuário se ele souber exatamente o DN (por exemplo, dn: uid = bob, ou = users, dc = example, dc = com), mas eu não quero que o bind anônimo seja capaz de ler outros atributos
Eu tentei fazer o seguinte
olcAccess: {0}to attrs=userPassword by self write by anonymous auth by * none
olcAccess: {1}to attrs=shadowLastChange by self write by * read
olcAccess: {2}to attrs=PublicKey by * read stop
olcAccess: {3}to * by * none
Mas quando eu tento esse pedido
ldapsearch -x -b "dc=example,dc=com" -LLL '(&(objectClass=posixAccount)(uid='"bob"'))' 'PublicKey'
Eu recebo um "No such object (32)", mas se eu permitir o acesso a * by * read eu recebo o PublicKey para o usuário bob ..
Como posso conseguir isso?