A consulta LDAP do Mac OS X via dscl produz resultados diferentes para o mesmo usuário com a mesma origem de dados

1

Onde o atributo NFSHomeDirectory é armazenado para um usuário de Mac que se autentica via LDAP? Não parece estar no banco de dados LDAP no backend, então eu suponho que o Open Directory esteja envolvido.

Eu tenho 2 servidores, um é 10.5.8 e um é 10.7. Cada um é um mestre de diretório aberto. Também temos o Sun LDAP, que é o LDAP autoritativo para todo o nosso ambiente.

Quando eu faço dscl /LDAPv3/our.ldap.server read /Users/ouruser , obtenho um resultado diferente para o atributo NFSHomeDirectory nos dois servidores, mas estou consultando o mesmo servidor LDAP em ambas as instâncias.

Como isso poderia ser? O que eu não estou entendendo?

Eu suponho que os atributos estão todos armazenados no LDAP, pois é isso que estou consultando. Poderia ser caching?

Algum histórico

O servidor mais novo foi criado clonando o antigo com o Carbon Copy Cloner e, em seguida, atualizando-o. O ping no servidor LDAP resulta no mesmo IP em ambas as máquinas.

    
por Gregg Leventhal 29.12.2013 / 19:33

2 respostas

1

Eu descobri com alguma ajuda de fóruns. Ele está mapeando determinados atributos de um banco de dados local do Open Directory para o servidor LDAP Sun. Portanto, se você consultar o LDAP por meio do dscl no servidor local, alguns dos atributos entre os bancos de dados OD locais do servidor diferem, resultando em resultados diferentes.

    
por 30.12.2013 / 03:06
0

Eu não sou tão versado no OSX, mas no Linux existe nscd , que armazena valores em cache. Você pode strace coisas no OSX? Rastrear o comando dscl provavelmente mostrará o que está sendo reutilizado de um cache, se esse for realmente o problema.

O armazenamento em cache por nscd é discutido aqui neste artigo wiki: NSS LDAP . Se você tiver um serviço como nscd em execução, tente desativá-lo.

    
por 29.12.2013 / 20:14

Tags