On Wednesday, May 28th, 2025 at 12:46 PM, Lennart Poettering 
<mzerq...@0pointer.de> wrote:

> On Mi, 28.05.25 09:43, Alexander Bokovoy (aboko...@redhat.com) wrote:
> 
> > There
> > are few issues with userdb API implementation. For example, there is an
> > assumption only one responder knows the information about the account
> > being requested. In real deployments we have to do group membership
> > merges across multiple nss backends. userdb right now fails to provide a
> > complete group membership for FreeIPA users, for example. This is not
> > unique to FreeIPA, though, it would do the same for any non-static
> > backend in a default configuration.
> 
> 
> That's a misunderstanding. userdb user/group memberships are
> implemented via the GetMemberships() IPC call, and of course it's
> assumed that multiple backends provide these, and the results of all
> backends are combined. After all, it's pretty much the default case
> that a regular user for example managed by homed, is part of a
> system-specific group (such as "wheel") which is managed via
> /etc/passwd.
> 
> In fact, it's even possible to put together a userdb backend that
> doesn't provide any user or group records, but does provide membership
> relationships for users of other backends.
> 
> When doing NSS emulation nss-systemd understands this: when returning
> a group record it will combine a specific userdb group record from one
> backend with the results of a matching GetMemberships() of all
> backends and return that as one "struct group" NSS record. Or in other
> words: .gr_name, .gr_passwd, .gr_gid are initialized from the group
> record JSON object, but .gr_mem is initialized from the combination of
> the results of all GetMemberships() IPC calls.
> 
> Lennart

I understand how it's supposed to work.
But the FreeIPA issue...

Kind regards,
Pramod
-- 
_______________________________________________
devel mailing list -- devel@lists.fedoraproject.org
To unsubscribe send an email to devel-le...@lists.fedoraproject.org
Fedora Code of Conduct: 
https://docs.fedoraproject.org/en-US/project/code-of-conduct/
List Guidelines: https://fedoraproject.org/wiki/Mailing_list_guidelines
List Archives: 
https://lists.fedoraproject.org/archives/list/devel@lists.fedoraproject.org
Do not reply to spam, report it: 
https://pagure.io/fedora-infrastructure/new_issue

Reply via email to