Estou tentando descobrir como estruturar meu ldap e/ou configurar sssd para ler membros de grupos aninhados.
Algo assim funciona para membros normais de grupos:
DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
memberUid userName1
memberUid userName2
e o sssd.conf fazendo algo como:
[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
se eu id userName1
conseguir a server-admins
assinatura e puder fazer login com esse usuário.
No entanto, o que eu gostaria de fazer é algo assim:
DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
member cn=jobTitleGroup1,ou=Roles,dc=example,dc=com
Em seguida, faça com que a adesão jobTitleGroup1
contenha as pessoas:
DN: cn=jobTitleGroup1,ou=Roles,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
memberUid userName1
memberUid userName2
O problema é que o sssd parece reconhecer apenas o atributo memberUid e não parece ver/pesquisar a associação do grupo aninhado de jobTitleGroup1
.
Portanto, não sei como fazer grupos aninhados e/ou não sei como fazer com que o sssd leia a associação de grupos aninhados. Qualquer ajuda seria apreciada.
Responder1
Duas semanas depois, encontrei a resposta. Duas coisas eram o problema, uma das quais era por causa da primeira.
O primeiro problema foi que, como configurei o ldap com o esquema rfc2307bis, meus grupos estão usando groupOfNames e o atributo "membro".
No entanto, o sssd não reconhecia a associação, a menos que eu usasse "memberUid". O memberUid foi o segundo problema.
em sssd.conf em domínio/padrão eu precisava do seguinte:
[domain/default]
ldap_schema = rfc2307bis
ldap_group_object_class=groupOfNames
ldap_group_member=member
então meu grupo de permissões poderia ser:
DN: cn=server-admins,ou=Groups,dc=example,dc=com
groupOfNames (structural)
posixGroup (auxiliary)
member cn=jobTitleGroup1,ou=Roles,dc=example,dc=com
e meu grupo de funções poderia ser:
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