在OpenLDAP服务器明文存储用户密码

问题描述 投票:-1回答:1

我正在使用osixia/openldap泊坞窗图像(https://github.com/osixia/docker-openldap)提供的OpenLDAP但散列存储所有密码。

通常,这将是可取的,但我打算凑在前端的密码(与盐析和MD5),所以没有人在组织永远不会看到用户的密码,但是当我试图拯救他们,他们是哈希再次,我还没有找到一种方法来阻止这种行为。

我尝试删除(使用用户cn=admin,cn=config)自带的图像称为cn={4}ppolicy,cn=schema,cn=config,我认为可能是罪魁祸首,但ldapdelete返回Server is unwilling to perform (53)的条目。

任何帮助深表感谢。

docker ldap openldap
1个回答
-1
投票

如果明文存储的密码,您可以在纯文本检索。

你只需要在用户使用读他们有正确的权利做了ACL检查。

你所谈论的密码策略条目只是一个schema定义,它允许你定义一个密码策略,但不会强制任何东西。 (53错误是因为你不能从正在运行的OpenLDAP删除架构,以防止除去这可以通过一个条目中使用的架构)

据我可以在你使用泊坞窗图像github上看到,所使用的ACL是:

olcAccess: to attrs=userPassword,shadowLastChange 
           by self write 
           by dn="cn=admin,{{ LDAP_BASE_DN }}" write 
           by anonymous auth 
           by * none

这意味着,只有用户自己或管理员帐户可以读取密码字段userPassword

正是这种ACL,你需要修改,以满足您的需求。该ACL应设在这里:

dn: olcDatabase={1}{{ LDAP_BACKEND }},cn=config

© www.soinside.com 2019 - 2024. All rights reserved.