2012-07-11 122 views
1

我試圖建立RhodeCode以及其他服務,LDAP(OpenLDAP的v3)和一切工作的罰款去除了一兩件事,我的結構是這樣的:LDAP和組過濾器

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一羣人訪問,但我不知道如何去創造。什麼讓我擔心,沒有會員的屬性可以使用,也不知道如何添加它。有人能幫我解決這個問題嗎?

回答

1

我會使用organizationalRole或groupOfUniqueNames作爲組類,並分別將roleOccupant或uniqueMember設置爲組中用戶的DN。然後,您只需在該屬性中搜索具有用戶DN的組的子樹。 UID也可以工作,但如果您使用DN值屬性和「重新設定」覆蓋層,則您可以解決參照完整性問題,這是您確實必須的。

0

以其他方式進行操作。不要嘗試將組分配給用戶,而是創建一組用戶列表。

如果使用一系列uniqueMember屬性創建groupOfUniqueNames,每個屬性都是您的一個用戶的DN,那麼當您轉儲屬性(如果您的用戶)時不會看到該屬性。

但是一個簡單的搜索: 「uniqueMember = DN-用戶的-」 會給你每一個具有用戶作爲組成員