1

我正在尝试设置 RhodeCode 以及其他服务以使用 LDAP(OpenLDAP v3)并且一切都很好,除了一件事,我的结构如下所示:

dc=domain,dc=com  
ou=Groups | ou=People  
hgusers   | test1  
sshusers  | test2  
others  

这些是通过 ldapsearch 获得的示例

dn: cn=sshusers,ou=Group,dc=domain,dc=com  
objectClass: top  
objectClass: posixGroup  
cn: sshusers  
userPassword:: e2NyeXB0fXg=  
gidNumber: 14567  
memberUid: test1  


dn: uid=test1,ou=People,dc=domain,dc=com  
uid: test1  
cn: Test User  
objectClass: account  
objectClass: posixAccount  
objectClass: top  
objectClass: shadowAccount  
shadowLastChange: 15472  
shadowMax: 99999  
shadowWarning: 7  
loginShell: /bin/sh  
uidNumber: 10099  
gidNumber: 10099  
homeDirectory: /home/test1  
gecos: test  
userPassword:: e1NTSEF9WDUvSWpYeU9YQjlESGxYdy9ETWFTRFhaejFVN3VLSm8=  

现在我正在尝试为 RhodeCode 和其他东西创建一个过滤器,因此它只允许来自 hgusers 组的人访问,但我不知道如何创建它。让我担心的是,没有可以使用的 memberOf 属性,也不知道如何添加它。有人可以帮我解决这个问题吗?

4

2 回答 2

1

我将使用 organizationsRole 或 groupOfUniqueNames 作为组类,并将 roleOccupant 或 uniqueMember 分别设置为组中用户的 DN。然后,您只需在该子树中搜索该属性中具有用户 DN 的组。UID 也可以工作,但是如果您使用 DN 值属性和“重新定义”覆盖,则可以解决引用完整性问题,而这确实是必须的。

于 2012-07-12T10:47:14.847 回答
0

换个方式去做吧。不要尝试将组分配给用户,而是创建作为用户列表的组。

如果您创建一个具有一系列 uniqueMember 属性的 groupOfUniqueNames,每个属性都是您的一个用户的 DN,那么当您转储您的用户的属性时,您不会看到这一点。

但是一个简单的搜索:“uniqueMember= dn-of-user ”会给你每个有用户作为成员的组。

于 2013-12-20T08:16:30.250 回答