Назад | Перейти на главную страницу

Как обрабатывать вложенные группы в LDAP

Я новичок в LDAP, и я просто изучаю, могу ли я использовать его в своем следующем проекте или лучше держаться от него подальше. Проект будет сильно зависеть от концепции вложенных групп, и мне часто нужно знать, в каких группах находится пользователь (а также в каких супергруппах), какие пользователи входят в какую группу и сколько людей в группе (включая подгруппы). Я пытался прочитать о вложенных группах в ldap, но мне трудно найти хорошую литературу по этой теме. Пока лучшее, что я нашел: http://middleware.internet2.edu/dir/groups/docs/internet2-mace-dir-groups-best-practices-200210.htm который рекомендует пересылать ссылки.

Есть ли другая документация, описывающая вложенную группу? К настоящему времени я не ограничен реализацией, поэтому это может быть, например, Специфично для openLDAP.

Я также открыт для всех рекомендаций относительно вложенных групп.

Спасибо, Маркус

Похоже, ты мог бы пойти с groupOfNames - этот объект содержит набор отличительных имен LDAP, поэтому он может без проблем содержать пользователей и другие группы. Предостережение заключается в том, что раскрутка дерева членства (и обеспечение отсутствия в нем циклов или правильная обработка циклов) является обязанностью вашего программного обеспечения.

Сам я никогда не делал прямых ссылок (я предпочитаю подход «Группа имеет этих участников», а не «Член в этих группах» - моему мозгу это легче с этим делать), но структура моей группы обычно дискретна, невложенное членство, поэтому могут быть преимущества, которые я упускаю.

OpenLDAP может использовать вложенные группы в правилах контроля доступа, которые подробно описаны здесь: http://www.openldap.org/faq/data/cache/1133.html

Вложенные группы также могут использоваться для входа в Linux при настройке с использованием указаний в этом ответе: группы Linux на основе dn из ldap

Им решать, будут ли другие приложения использовать вложенные группы. Я знаю, что Samba умеет, а Openfire не. Я также создал набор классов PHP, чтобы позволить нашим приложениям интрасети использовать вложенные группы. Это было не совсем так жесткий, это заняло немного времени.