OpenLDAP ACL 存储为哈希吗?

OpenLDAP ACL 存储为哈希吗?

有人知道为什么当我添加这 3 个 ACL 时,第三个 ACL 在 olcDatabase\={2}hdb.ldif 中显示为随机字符串吗?

ACL:

olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=Manager,dc=eastlands,dc=net" write
olcAccess: {1}to dn.base="" by * read
olcAccess: {2}to * by dn="cn=Manager,dc=server,dc=net" write by * read

slapcat 输出:

olcAccess: {0}to attrs=userPassword,shadowLastChange by dn="cn=Manager,dc=server,dc=net" write
olcAccess: {1}to dn.base="" by * read
olcAccess:: ezJ9dG8gKiBieSBkbj0iY249TWFuYWdlcixkYz1lYXN0bGFuZHMsZGM9bmV0IiB3cml0ZSBieSAqIHJlYWQg

这有点随机,但它确实困扰着我。

我在 CentOS 7 上运行 openldap-2.4.39-7.el7。

答案1

请尝试:

echo "your_hash" | openssl enc -d -base64

您将看到哈希值中的内容。您可以确认@Sven 所说的内容(行尾的尾随空格,很有可能)。

答案2

我编写了这个简单的脚本来实现这一点: https://github.com/peppelinux/slapd_acl

只需安装它,pip3 install slapd_acl 它将以纯文本形式向我们显示 ACL(如果它们在 b64 中)。它还可以将它们导出到 ldap 修改 ldif 结构中,以便我们轻松修改它们并在之后立即提交。

相关内容