-
Notifications
You must be signed in to change notification settings - Fork 256
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Further restriction of child processes capabilities (part 2) #7703
Conversation
7d59fca
to
37f548a
Compare
8f69432
to
636f01e
Compare
4e7bdd4
to
59fbad5
Compare
Hm... Some tests still fail when run with service User=root:
This is despite
Hm.. I think I have an idea... |
59fbad5
to
bfdd469
Compare
|
FYI, I ran some tests against the copr build sssd-9.pr7703-05810.el10.x86_64 and they passed with SSSD running as both root and sssd. |
Created #7742 to track this. |
85948ea
to
c6ee04b
Compare
A rebase. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Change seems to function as expected with the tests suggested.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi,
thank you for the patch code/functionality-wise I'm fine.
The removal of the path creation for FILE: and DIR: should get a prominent release-note entry, especially since it will be removed in a minor release.
If would be nice to have a comment in the related commit message about the removal of krb5-child-test
. I'm not sure if someone is really using it but maybe a release note entry might appropriate as well.
bye,
Sumit
to match 'kinit' behavior and avoid the need for cap_chown and cap_dac_override. :relnote:SSSD doesn't create anymore missing path components of DIR:/FILE: ccache types while acquiring user's TGT. The parent directory of requested ccache directory must exist and the user trying to log in must have 'rwx' access to this directory. This matches behavior of 'kinit'.
Since 'krb5_child' has lost set-id bit and is run under uid/gid of the backend, it was a no-op.
Set user uid/gid as real IDs as a first step in `privileged_krb5_setup()` and drop cap_set*id afterwards. Having real_ids == user_ids and set_ids == service_ids should be enough to switch thru and back. :relnote:`krb5-child-test` was removed. Corresponding tests under 'src/tests/system/' are aimed to provide a comprehensive test coverage of 'krb5_child' functionality.
Monitor is the only user of this function and only if built with support of deprecated 'sssd.conf::user' option.
Remove non existent / private functions from a header.
9cf171a
to
856ade4
Compare
Updated commit messages of corresponding patches. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hi,
thank you for the updates, ACK.
bye,
Sumit
Pushed PR: #7703
|
Minimizes capabilities required by 'krb5_child'.