Eu tenho um domínio baseado em samba4. Como posso listar todos os grupos aos quais determinado usuário pertence?
Eu sei que posso fazer o caminho inverso - iterar por todos os grupos [lista de grupos de ferramentas samba] e veja sua associação [lista de membros do grupo de ferramentas samba $groupName], mas talvez haja uma maneira mais direta?
Responder1
Acho que não samba-tool
tem nada para isso, mas o LDAP é mais poderoso para esse tipo de consulta, por exemplo
ldapsearch -LLL -b "dc=example,dc=com" "(&(cn=*)(memberUid=user))" dn
Responder2
Você pode usar ''id'':
$ id eduardomozart
uid=3000011(NETHOUSE\eduardomozart) gid=100(users) grupos=100(users),3000011(NETHOUSE\eduardomozart),3000005(NETHOUSE\domain admins),3000002(NETHOUSE\denied rodc password replication group),3000002(NETHOUSE\denied rodc password replication group),3000009(NETHOUSE\dimension-e521$),3000000(BUILTIN\administrators)
Observe que para o backend idmap_ad, o usuário precisa ter os atributos uidNumber e gidNumber definidos no LDAP (guia Unix Attributes de Active Directory User and Computers) como RFC2307 ou o comando retornará "id: eduardomozart: no such user".
Referência: Gerald Carter, Jay Ts, Robert Eckstein, 2007. Usando Samba: um servidor de arquivos e impressão para Linux, Unix e Mac OS X. (3ª edição). O'Reilly, ISBN 0-596-00769-8.