Openldap + dynlist + posixGroup

时间:2011-01-05 11:31:12

标签: linux ldap debian openldap

我遇到OpenLdap和文件权限问题。

首先 - 我在slapd.conf中设置了这个:

overlay         dynlist
dynlist-attrset labeledURIObject labeledURI

第二 - 我用cn = test,ou = Projects,dc = example,dc = com with:

dn: cn=test,ou=Projects,dc=example,dc=com
gidNumber: 6789
objectClass: posixGroup
objectClass: top
objectClass: labeledURIObject
labeledURI: ldap:///cn=testgroup,ou=Groups,dc=example,dc=com?memberUid?sub?
(objectClass=posixGroup)
memberUid: user1 (dynamic)
memberUid: user2 (dynamic)

cn=testgroup,ou=Groups,dc=example,dc=com我有memberuid:user1和memberUid:user2

第三 - 当我进行getent组测试时,我有:

test:*:6789:user1,user2

但是当我尝试id user1时,我没有看到这个组:(

然后我设置chmod 770 dirchown root.test dir并尝试访问此目录。

但当然这是不可能的,因为用户不在这个群组中(即“id”)。

有谁知道解决方案?

3 个答案:

答案 0 :(得分:1)

  

第三 - 当我进行getent组测试时,我有:

     

试验:*:6789:用户1,用户2

     

但是当我尝试id user1时,我没有看到这个组:(

不幸的是,动态列表( dynlists )是单向组(不是TWO方式)。这意味着反向查找将不起作用,这会导致您现在面临的问题。无法使反向posix组查找与 dynlist 一起使用。

但是,我相信OpenLDAP网站上还有另一个可用的模块。它被称为 autogroup 。这是一个静态组维护者模块。这种分组方法不涉及动态数据,而是由 autogroup 模块自动管理的REAL数据。但是,它配置类似于 dynlist 组,因为它使用 labeledURI 属性来允许“存储过程”。

当我意识到 dynlist 的缺点时,我也很失望,我应该指出 autogroup 仍然有点实验性。彻底测试并向OpenLDAP报告任何错误。

我希望这会有所帮助......

最高

答案 1 :(得分:0)

这里以不memberUid的方式构建群组,但member

dn: cn=mygroup,ou=groups,o=company
objectClass: posixGroup
objectClass: top
objectClass: groupOfNames
cn: mygroup
member: uid=user1,ou=users,o=company
displayName: mygroup
gidNumber: 1234

架构类型也应设置为RFC2307bis(ldap_schema = rfc2307bis中的sssd.conf)。

答案 2 :(得分:0)

对于第3个问题,问题是id将使用带有(member = uid = login,...)的ldap请求,而getent group将搜索组(cn = groupname)。所以第二个触发叠加,而第一个不触发(参见手册页)。我也遇到了这个问题,并找到了一些关于它的链接: http://www.openldap.org/lists/openldap-software/200708/msg00250.htmlhttp://www.openldap.org/lists/openldap-devel/200708/msg00127.html

到目前为止,我没有找到任何好的解决方案,也许改变nss_ldap会起作用(如果你使用它,你没有解释)