Red Hat Bugzilla – Bug 896476
SSSD should warn when pam_pwd_expiration_warning value is higher than passwordWarning LDAP attribute.
Last modified: 2013-05-28 14:56:12 EDT
Description of problem: This issue was observed during the testing of SSSD new feature pam_pwd_expiration_warning which was set to 3 days in sssd.conf, while keeping LDAP attributes passwordMaxAge = 3 days and passwordWarning = 2 days. In this case, when a user logs in 3 days prior to password Max age, user should see a password expiry warning OR the log files should show warning messages. Both the log files, ie /var/log/secure and SSSD_Domain log file doesn't show any warning message. So, i am assuming that SSSD is honouring passwordWarning LDAP attribute which has a lower value than pam_pwd_expiration_warning. Version-Release number of selected component (if applicable): SSSD Version: sssd-1.9.2-41.el6.x86_64 How reproducible: Always Steps to Reproduce: 1. Add an LDAP user and set the following attributes in LDAP Server: passwordMaxAge = 259200 (3 days) passwordWarning: 180000 (2.083 days) 2. Add "pam_pwd_expiration_warning = 3" in [pam] section of sssd.conf. See the conf details below: [sssd] config_file_version = 2 sbus_timeout = 30 services = nss, pam domains = LDAP [nss] filter_groups = root filter_users = root debug_level = 9 [domain/LDAP] debug_level=9 id_provider = ldap auth_provider = ldap ldap_uri = ldap://$SERVERS ldap_tls_cacert = /etc/openldap/certs/cacert.asc ldap_search_base = dc=example,dc=com [pam] debug_level = 9 pam_pwd_expiration_warning = 3 3. Clear the cache and restart sssd service, if already running. 4. Authenticate the user and verify the /var/log/secure and SSSD_DOMAIN log files. Actual results: Upon login, user is not shown password expiry message. Also, both the log files, ie /var/log/secure and SSSD_Domain log file doesn't show any warning message. I am assuming that SSSD is honouring passwordWarning attribute which has a lower value than pam_pwd_expiration_warning. Expected results: SSSD should show warning during user login and the same should be logged in log files as well. Additional info:
Upstream ticket: https://fedorahosted.org/sssd/ticket/1773
Verified and automated the BZ on SSSD version - sssd-1.9.2-82.el6.x86_64 This bug was logged based on the assumption that the SSSD pam_pwd_expiration_warning feature could override the LDAP passwordWarning feature and generate warning. However, sssd client feature also depends on the expiry warning generated by LDAP so if the value is set higher than passwordWarning then user will not get any warning. In simple words, if pam_pwd_exp_warn = 0, passwordWarning=3 days & passwordMaxAge =3 days then user will receive warnings; But if pam_pwd_exp_warn = 3, passwordWarning=2 days & passwordMaxAge = 3 days, user will not see warnings since LDAP server will not generate warnings in this case until 3 days.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. http://rhn.redhat.com/errata/RHSA-2013-0508.html