2013-05-14 7 views
0

Я пытаюсь настроить acl таким образом, чтобы пользователи с атрибутом allowedService с именем приложения могли только войти в это конкретное приложение.Нужна помощь в настройке LDAP acl

У нас есть пользователи следующим образом:

dn: ou=People,dc=prime,dc=ds,dc=geo,dc=com 

dn: uid=user1,ou=People,dc=prime,dc=ds,dc=geo,dc=com 
uid: user1 
allowedService: gitlab 

dn: uid=user2,ou=People,dc=prime,dc=ds,dc=geo,dc=com 
uid: user2 
allowedService: zabbix 

dn: uid=user3,ou=People,dc=prime,dc=ds,dc=geo,dc=com 
objectClass: top 
uid: user3 
allowedService: zabbix 

Мы создали пользователя следующим образом:

dn: cn=gitlab,ou=Applications,ou=Groups,dc=prime,dc=ds,dc=geo,dc=com 
cn: gitlab 
uid: gitlab 

Теперь в приложении мы дали детали следующим образом: конфигурация gitlab

base: ou=People,dc=prime,dc=ds,dc=geo,dc=com 
uid: uid 
bind_dn: cn=gitlab,ou=Applications,ou=Groups,dc=prime,dc=ds,dc=geo,dc=com 
password: password 

Теперь в acl мы пробовали различные варианты:

[email protected]:/# ldapsearch -Q -LLL -Y EXTERNAL -H ldapi:/// -b cn=config '(olcDatabase={1}hdb)' olcAccess 
dn: olcDatabase={1}hdb,cn=config 
olcAccess: {0}to attrs=userPassword,shadowLastChange by self write by anonymous auth by dn="cn=admin,dc=ds,dc=geo,dc=com" write by * none 
olcAccess: {1}to dn.base="" by * read 
olcAccess: {2}to dn.subtree="ou=Applications,ou=Groups,dc=prime,dc=ds,dc=geo,dc=com" by self write by * write 
olcAccess: {3}to dn.subtree="ou=People,dc=prime,dc=ds,dc=geo,dc=com" by self write by * auth 
olcAccess: {4}to dn.subtree="ou=People,dc=prime,dc=ds,dc=geo,dc=com" filter="(allowedService=gitlab)" by dn.exact="cn=gitlab,ou=Applications,ou=Groups,dc=prime,dc=ds,dc=geo,dc=com" write by self write 

Но при этом пользователь не может войти в систему. Но мы меняем olcAccess: {3}to dn.subtree="ou=People,dc=prime,dc=ds,dc=geo,dc=com" by self write by * write, все пользователи могут войти.

Но на самом деле нам нужно только пользователю, которому нужно только войти в приложение gitlab. И пользователям user2 и user3 нужно только войти в приложение zabbix

Может ли кто-нибудь помочь мне настроить acl для этого. Заранее спасибо.

Благодаря

Geo

ответ

0

Это не то, что списки ACL для. Они не контролируют, кто может войти в систему. Они контролируют, какие части поддерева, которые пользователь, зарегистрированный в сети, может читать или изменять.

Смежные вопросы