OpenLDAP slapo-unique falha com UID

OpenLDAP slapo-unique falha com UID

Tenho várias filiais em meu diretório LDAP que usam um atributo UID como parte do DN. Recentemente, recebi a tarefa de garantir a exclusividade do atributo UID em todos os aspectos, para que o UID não possa corresponder de uma subárvore para outra.

Usar slapo-unique funciona, até certo ponto. O problema surge quando adiciono um usuário, mas não defino explicitamente o atributo UID no LDIF ou no aplicativo que executa a importação.

Primeiro, assumiremos que tenho a seguinte regra definida:

olcUniqueURI: ldap:///dc=domain,dc=com?uid?sub?(objectClass=inetOrgPerson)

Agora, por exemplo, digamos que eu tenha um usuário existente cujo DN seja "uid=userj,ou=People,dc=domain,dc=com"

Em seguida, adiciono o seguinte ldif:

dn: uid=userj,ou=OtherPeople,dc=domain,dc=net
givenName: Joe
objectClass: inetOrgPerson
cn: Joe User
sn: User
uid: userj
mail: [email protected]

Como seria de esperar, recebo um erro sobre a exclusividade do uid. O problema surge agora quando não incluo explicitamente o UID, mas confio nele para ser definido via slapd na importação porque é definido como o nome distinto:

dn: uid=userj,ou=OtherPeople,dc=domain,dc=net
givenName: Joe
objectClass: inetOrgPerson
cn: Joe User
sn: User
mail: [email protected]

E isso é permitido. Depois de adicionar isso, uma pesquisa usando o filtro de pesquisa "(uid=userj) exibirá os dois DNs:

uid=userj,ou=Pessoas,dc=domínio,dc=com e uid=userj,ou=OutrasPessoas,dc=domínio,dc=net

E ambos mostrarão que possuem um atributo UID definido como "userj". Observando os logs de depuração do slapd, quando não defino explicitamente o UID no ldif (o que não deveria ser necessário, pois está implícito no novo DN), os logs mostram que ele nunca consulta o LDAP para esse atributo UID.

Então, alguém tem uma sugestão de como posso contornar esse problema? Obviamente sugeri às pessoas que definissem sempre e implicitamente o atributo UID, mesmo que faça parte do DN, mas algumas pessoas são teimosas e gostam de encontrar maneiras de violar restrições.

Desde já, obrigado;

informação relacionada