Возможно ли, чтобы OpenLDAP предоставлял разные базовые DN для разных пользователей?
Поясню, чего именно я хочу добиться.
У меня есть домен (скажем, dc=пример,dc=org
).
У меня также есть экземпляр phpLDAPadmin, цель которого — помочь мне управлять этим доменом.
У меня также есть филиал где-то в этом домене (скажем, ou=foo,ou=bar,dc=baz,dc=example,dc=org
).
У меня также есть пользователь (скажем, uid=admin,ou=bar,dc=baz,dc=example,dc=org
).
Я предоставил этому пользователю некоторые разрешения, чтобы позволить ему управлять веткой, о которой я упоминал ранее (olcAccess: к dn.subtree="ou=foo,ou=bar,dc=baz,dc=example,dc=org" по dn.exact="uid=admin,ou=bar,dc=baz,dc=example, dc=org" управлять
).
Проблема в том, что этот пользователь не может использовать phpLDAPadmin, потому что сервер OpenLDAP распространяет свое базовое DN (объявляя namingContext: dc=example,dc=org
атрибут, я думаю), к которому у пользователя нет доступа. Итак, phpLDAPadmin пытается показать пользователю содержимое dc=пример,dc=org
, терпит неудачу и сокрушается, что "Эта база не может быть создана с помощью PLA".
Как заставить phpLDAPadmin показывать ou=foo,ou=bar,dc=baz,dc=example,dc=org
в качестве базового DN для этого пользователя вместо того, чтобы пытаться показать его dc=пример,dc=org
что совсем недоступно?
Есть ли способ сделать объявление OpenLDAP с другим контекст именования
(ou=foo,ou=bar,dc=baz,dc=example,dc=org
) пользователю?
Или мне забыть эту идею и предоставить пользователю доступ только для чтения к каждому отпуску с самого верха (dc=пример,dc=org
, dc=баз, dc=пример, dc=org
, ou=bar,dc=baz,dc=example,dc=org
)?
Спасибо.