Структура OpenLDAP и поддержка пользователей на основе ролей
Я планирую структуру сервера OpenLDAP, чтобы интегрировать его с несколькими приложениями (скажем, 10 приложений). В этом у меня есть 8 внутренних приложений (веб-приложения и мобильные приложения), а 2 других говорят о внешних сервисах, таких как GitLab.
Наш сценарий будет похож на использование всех 10 приложений с 1000 пользователей. Среди 1000 пользователей будут разные роли, такие как администратор, менеджеры, разработчики и т. Д.
Все 1000 пользователей будут иметь разрешение / доступ для входа в приложения (например, cn = application3, cn = application4, cn = application5, как показано на рисунке).
Для cn = application1 и cn = application2 (которые являются внешними сервисами, такими как GitLab и включают отдельные роли, как во внешнем приложении), только немногие пользователи будут иметь разрешение на доступ / использование.
Согласно нашему требованию, мы вставили 1000 пользователей в cn = group1. И тем самым мы переместили несколько пользователей в cn = application1 и cn = application2, которым нужен доступ к этим приложениям. В будущем размер моей организации увеличится, и количество приложений также увеличится. На данный момент мы продолжаем со структурой, как показано на рисунке. Это лучшая практика для подражания?
Может кто-нибудь, пожалуйста, подскажите мне, как я могу работать с этим?? Поскольку я новичок в OpenLDAP, пожалуйста, дайте мне знать, если я упомянул что-то не так.
1 ответ
Ваш макет выглядит странно.
- Обычно пользователи хранятся в
ou=users,dc=example,dc=com
,ou=accounts,dc=example,dc=com
или жеou=people,dc=example,dc=com
, - Роли обычно рассматриваются по типу группы (
groupOfNames
,groupOfUniqueNames
или жеorganizationalRole
) и держится в чем-то вродеou=groups,dc=example,dc=com
,groupOfNames
является наиболее распространенным. - Подумайте, как назвать свои роли
cn=admins+ou=app1,ou=groups,dc=example,dc=com
, Это позволит вам получить все роли для app1, выполнив поискou=app1
,