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

2 週間後、私は答えを見つけました。問題は 2 つあり、そのうちの 1 つは最初の理由によるものでした。

最初の問題は、ldap を rfc2307bis スキーマで構成したため、グループが groupOfNames と "member" 属性を使用していることでした。

しかし、sssd は「memberUid」を使用しない限りメンバーシップを認識しませんでした。memberUid が 2 番目の問題でした。

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

関連情報