Servidor de Diretório do CentOS - Mudando Senha via LDAP Modifica, passando senha antiga

3

Isso pode ser um pouco estranho, já que não tive sucesso em encontrar uma solução até agora.

Isso é instalado no CentOS 5.8 e usando o CentOS-Directory / 8.2.8 B2012.041.1227.

Simplesmente, estou usando um aplicativo que solicitará que o usuário altere sua senha ( OpenAM ). Isso funciona muito bem, mas se o DS está configurado para armazenar o histórico de senhas, o aplicativo cliente não consegue alterar a senha, constantemente indo "Senha no histórico". Isso não é muito útil, especialmente porque sei que a senha não foi usada anteriormente.

Depois de me sentar com o Wireshark, vi que o aplicativo cliente estava enviando a seguinte solicitação:

dn: uid=AUser,ou=People,dc=testldap
changetype: modify
delete: userpassword
userpassword: location
-
add: userpassword
userpassword: american_psycho

Que se cansa com "Senha no histórico". Eu tentei o mesmo pedido na linha de comando:

$ ldapmodify -h host -p 389 -D "uid=AUser,ou=People,dc=testldap" -w location
dn: uid=AUser,ou=People,dc=testldap
changetype: modify
delete: userpassword
userpassword: location
-
add: userpassword
userpassword: american_psycho
^D
Processing MODIFY request for uid=AUser,ou=People,dc=testldap
MODIFY operation failed
Result Code:  19 (Constraint Violation)
Additional Information:  password in history

No entanto, se eu tentar o seguinte:

$ ldapmodify -h host -p 389 -D "uid=AUser,ou=People,dc=testldap" -w location
dn: uid=AUser,ou=People,dc=testldap
changetype: modify
delete: userpassword 
-
add: userpassword
userpassword: american_psycho
^D
Processing MODIFY request for uid=AUser,ou=People,dc=testldap
MODIFY operation successful for uid=AUser,ou=People,dc=testldap

Então, obviamente, isso funciona, a única diferença é que eu não estou passando a senha antiga dessa vez. Entendo por que você deseja passar um valor a ser excluído (por exemplo, se for um atributo de vários valores), mas não entendo por que o DS está verificando o histórico de senhas ...

Eu verifiquei os arquivos de log e, mesmo com todo o log ativado, não vejo nada útil ...

Não há como configurar o aplicativo cliente para não enviar através da senha antiga sem forçar isso por conta própria, então estou realmente esperando que haja alguma maneira de configurar o Servidor de Diretório do CentOS para lidar com isso. Eu sei que isso é suportado pelo Active Directory (ou foi em algum momento): link Mas eu Não é possível descobrir como isso pode ser suportado no CentOS DS.

    
por ipsi 21.12.2012 / 05:23

1 resposta

0

slapcat -H ldpap://host:389/uid=AUser,ou=People,dc=testldap -l export.ldif

Este comando exporta a Entrada de Diretório (ou banco de dados inteiro) para o formato LDIF.
Se algo estiver errado com o banco de dados, você poderá corrigi-lo e importar o Arquivo LDIF .

    
por 23.12.2012 / 00:57

Tags