OpenLDAP ACL,以防止匿名用户获取所有组的列表
发布时间:2020-12-15 18:27:24 所属栏目:安全 来源:网络整理
导读:我正在尝试保护现有的OpenLDAP安装,如果它知道LDAP中特定用户条目的uid,则需要允许匿名用户检索有关记录的信息.假设结构如下: dc=example,dc=com ou=People uid=user1 uid=user2 ou=Groups cn=user1 memberUid:user1 cn=user2 memberUid:user2 cn=common me
我正在尝试保护现有的OpenLDAP安装,如果它知道LDAP中特定用户条目的uid,则需要允许匿名用户检索有关记录的信息.假设结构如下:
dc=example,dc=com ou=People uid=user1 uid=user2 ou=Groups cn=user1 memberUid:user1 cn=user2 memberUid:user2 cn=common memberUid:user1 memberUid:user2 现在,如果匿名者知道LDAP中存在条目uid = user1,则他们应该能够检索该用户所属的组列表.但是他们不应该发现其他群体. 因此ldapsearch -b“ou = Groups,dc = example,dc = com”应该不返回任何内容,而ldapsearch -b“ou = Groups,dc = com”“(&(objectClass = posixGroup)(memberUid = user1))“应返回user1所属的所有组. 到目前为止,我尝试了几种不同的ACL,但没有运气.它既可以搜索也可以列出所有组,或者不能列出所有组,但搜索不起作用. 有没有办法使用ACL实现所需的行为? PS:数据库使用标准的nis模式,因为数据库已经将数据更改为rfc2307bis不是一个选项(并且还有其他原因导致在这种情况下无法进行此类更改).
我不认为这是可能的,因为你不能限制哪些组可以读取.但是,OpenLDAP提供了一种可能对您有所帮助的替代方法.这称为“反向组维护”(参见章节12.8
in the (outdated) docs),其中包含memberOf覆盖.基本上,它维护用户所属的每个组的列表,这允许容易地查找此类信息.
有关如何以现代方式执行此操作,使用cn = config,请查看here. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |