Реализация безопасности на основе ролей в LDAP

Я работаю над реализацией безопасности на основе ролей в LDAP и Java. В частности, у меня есть следующие объекты, которые мне нужно представить в LDAP:

Пользователи Корпоративные группы пользователей - HR, финансы и т. Д.Permissions - DOCUMENT_READ, DOCUMENT_MODIFY и т. Д. Роли - АДМИН, ГОСТИ и т. Д.

Роли - это в основном группы разрешений, и они могут быть назначены пользователю или группе пользователей.

Я думал представить их в LDAP следующим образом:

Users - классы Person и uidObject с атрибутом userPassword. Группы пользователей - класс организационного подразделения, в котором находятся пользователи.Roles - класс объекта groupOfNames.Permissions - не уверен насчет этого, возможно, также класс groupOfNames.

Идея состоит в том, чтобы получить быстрый доступ от пользователя или группы к списку ролей, которые имеет этот пользователь или группа. Я знаю, что могу помещать пользователей и группы в атрибуты роли «член», но тогда мне придется сканировать все роли, чтобы найти, в каких из них есть этот пользователь. Есть ли способ иметь что-то вроде атрибута "member" в объекте Person?

В общем, кто-нибудь знает о хорошей реализации безопасности на основе ролей в LDAP? Я не мог найти хорошую документацию или учебники по этому вопросу. В настоящее время я использую ApacheDS в качестве сервера LDAP, но я открыт для предложений.

Ответы на вопрос(3)

Ваш ответ на вопрос