Skip to content

[autobackport: sssd-2-9] ipa s2n: do not try to update user-private-group#8347

Merged
alexey-tikhonov merged 2 commits intoSSSD:sssd-2-9from
sssd-bot:SSSD-sssd-backport-pr8002-to-sssd-2-9
Jan 12, 2026
Merged

[autobackport: sssd-2-9] ipa s2n: do not try to update user-private-group#8347
alexey-tikhonov merged 2 commits intoSSSD:sssd-2-9from
sssd-bot:SSSD-sssd-backport-pr8002-to-sssd-2-9

Conversation

@sssd-bot
Copy link
Contributor

This is an automatic backport of PR#8002 ipa s2n: do not try to update user-private-group to branch sssd-2-9, created by @sumit-bose.

Please make sure this backport is correct.

Note

The commits were cherry-picked without conflicts.

You can push changes to this pull request

git remote add sssd-bot git@github.com:sssd-bot/sssd.git
git fetch sssd-bot refs/heads/SSSD-sssd-backport-pr8002-to-sssd-2-9
git checkout SSSD-sssd-backport-pr8002-to-sssd-2-9
git push sssd-bot SSSD-sssd-backport-pr8002-to-sssd-2-9 --force

Original commits
1a8c302 - ipa s2n: do not try to update user-private-group
08c2ccf - tests: check user lookup after view change

Backported commits

  • fcb85e7 - ipa s2n: do not try to update user-private-group
  • 3230971 - tests: check user lookup after view change

Original Pull Request Body

When an IPA client requests the details about a trusted user from the
IPA server including its memberships the server will return the name of
all groups including the user-private-group. Since this group is not a
cached object on its own it is not needed to try to update it as a group
but it will be updated when the user object is updated.

This has to be taken into account especially after a client is assigned
to a new id-view because now the SYSDB_OVERRIDE_DN attribute is required
and all cached objects which are missing it must be updated. If the
user-private-group was found for update it should be skipped because the
calls to update group objects in the cache cannot handle
user-private-groups. This is expected behavior as user-private-groups
are not objects on their own.

Copy link

@gemini-code-assist gemini-code-assist bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request backports a fix to prevent SSSD from trying to update user-private-groups (UPGs) when an ID view changes. The changes in src/providers/ipa/ipa_s2n_exop.c correctly add a check for the group's objectCategory to differentiate real groups from UPGs, ensuring that only real groups are queued for update if they are missing the SYSDB_OVERRIDE_DN attribute. The new test case in src/tests/system/tests/test_ipa_trusts.py effectively validates this fix by simulating a view change and verifying that user lookups still succeed. The changes are well-implemented and the code appears correct. I have no further comments.

Copy link
Contributor

@aplopez aplopez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alexey-tikhonov alexey-tikhonov removed their assignment Jan 12, 2026
@alexey-tikhonov alexey-tikhonov removed their request for review January 12, 2026 10:27
@alexey-tikhonov alexey-tikhonov added no-backport This should go to target branch only. Accepted labels Jan 12, 2026
When an IPA client requests the details about a trusted user from the
IPA server including its memberships the server will return the name of
all groups including the user-private-group. Since this group is not a
cached object on its own it is not needed to try to update it as a group
but it will be updated when the user object is updated.

This has to be taken into account especially after a client is assigned
to a new id-view because now the SYSDB_OVERRIDE_DN attribute is required
and all cached objects which are missing it must be updated. If the
user-private-group was found for update it should be skipped because the
calls to update group objects in the cache cannot handle
user-private-groups. This is expected behavior as user-private-groups
are not objects on their own.

Reviewed-by: Alexey Tikhonov <atikhono@redhat.com>
Reviewed-by: Alejandro López <allopez@redhat.com>
(cherry picked from commit 1a8c302)
After a new view is applied to a client SSSD should make sure that the
cache entries are updated properly and all cached users can still be
resolved properly.

Reviewed-by: Alexey Tikhonov <atikhono@redhat.com>
Reviewed-by: Alejandro López <allopez@redhat.com>
(cherry picked from commit 08c2ccf)
@sssd-bot
Copy link
Contributor Author

The pull request was accepted by @alexey-tikhonov with the following PR CI status:


🟢 CodeQL (success)
🟢 rpm-build:centos-stream-9-x86_64:upstream (success)
🟢 Build / make-distcheck (success)
🟢 ci / prepare (success)
🟢 ci / system (centos-9) (success)
🟢 Static code analysis / codeql (success)
🟢 Static code analysis / pre-commit (success)
🟢 Static code analysis / python-system-tests (success)


There are unsuccessful or unfinished checks. Make sure that the failures are not related to this pull request before merging.

@sssd-bot sssd-bot force-pushed the SSSD-sssd-backport-pr8002-to-sssd-2-9 branch from 3230971 to ccb3ec5 Compare January 12, 2026 10:28
@alexey-tikhonov alexey-tikhonov merged commit 294a62d into SSSD:sssd-2-9 Jan 12, 2026
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Accepted no-backport This should go to target branch only.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants