I did some testing of pam_sss and the LDAP backend's password policy features and ran into some issue. One of the being the getuid() == 0 checks in pam_sss when checking whether the user needs to be prompted for the old password before changing the password.
I guess the idention of those checks is that "root" should be able to change a users password without being prompted for the old password. There are however some issues with that:
Most PAM clients run with a real uid of root(0), so that check will not work correctly in many cases. A notable exception being the passwd command. But with password policies in place password changes can be triggered from almost every PAM client.
When using the LDAP backend even root would need to somehow authenticate against the LDAP Server to be able to change a users password.
I already send a proposed patch/workaround to the list: https://fedorahosted.org/pipermail/sssd-devel/2010-March/002842.html
We discussed this issue, and our policy on this is that the SSSD should not be responsible for doing password resets on the central server. We will write a patch that will return a PAM message recommending alternative methods of achieving this objective.
milestone: NEEDS_TRIAGE => SSSD 1.2
Fixed by 6f36029dd5fb1d16deb0b3f990713be7fa9f3a70
fixedin: => 1.2.0 resolution: => fixed status: new => closed
Fields changed
rhbz: => 0
Metadata Update from @ralf: - Issue assigned to sbose - Issue set to the milestone: SSSD 1.2.0
SSSD is moving from Pagure to Github. This means that new issues and pull requests will be accepted only in SSSD's github repository.
This issue has been cloned to Github and is available here: - https://github.com/SSSD/sssd/issues/1459
If you want to receive further updates on the issue, please navigate to the github issue and click on subscribe button.
subscribe
Thank you for understanding. We apologize for all inconvenience.