SSSD, openLDAP и вложенные группы

SSSD, openLDAP и вложенные группы

Я пытаюсь понять, как структурировать мой ldap и/или настроить sssd для чтения членства во вложенных группах.

Для обычного членства в группе работает что-то вроде этого:

DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
memberUid userName1
memberUid userName2

и sssd.conf делает что-то вроде:

[sssd]
config_file_version = 2
domains = default
services = nss, pam
full_name_format = %1$s

[domain/default]
debug_level = 2
id_provider = ldap
auth_provider = ldap
cache_credentials = True
ldap_uri = ldaps://ldapserver:636
ldap_search_base = dc=example,dc=com
# start searching here
ldap_user_search_base = ou=People,dc=example,dc=com
# search these people
ldap_group_search_base = ou=Groups,dc=example,dc=com
ldap_group_nesting_level = 10
simple_allow_groups = server-admins

если я id userName1получу server-adminsчленство и смогу войти в систему под этим пользователем.

Однако я хотел бы сделать что-то вроде этого:

DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
member cn=jobTitleGroup1,ou=Roles,dc=example,dc=com

Тогда членство должно jobTitleGroup1содержать людей:

DN: cn=jobTitleGroup1,ou=Roles,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
memberUid userName1
memberUid userName2

Проблема в том, что sssd, похоже, распознает только атрибут memberUid и не видит/не ищет вложенное членство в группах jobTitleGroup1.

Так что я не знаю, как делать вложенные группы, и/или не знаю, как заставить sssd читать членство во вложенных группах. Любая помощь будет оценена.

решение1

Две недели спустя я нашел ответ. Проблема была в двух вещах, одна из которых была из-за первой.

Первая проблема заключалась в том, что поскольку я настроил ldap со схемой rfc2307bis, мои группы использовали groupOfNames и атрибут «member».

Однако sssd не распознавал членство, пока я не использовал "memberUid". MemberUid был второй проблемой.

в sssd.conf в разделе domain/default мне нужно было следующее:

[domain/default]
ldap_schema = rfc2307bis
ldap_group_object_class=groupOfNames
ldap_group_member=member

тогда моя группа разрешений может быть такой:

DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
member cn=jobTitleGroup1,ou=Roles,dc=example,dc=com

и моя ролевая группа могла бы быть:

DN: cn=jobTitleGroup1,ou=Roles,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
member uid=userName1,ou=People,dc=example,dc=com
member uid=userName2,ou=People,dc=example,dc=com

Связанный контент