Hide Forgot
Description of problem: Enumeration fails for non-primary usernames with multi-valued uid. Version-Release number of selected component (if applicable): sssd-1.5.1-51.el6 How reproducible: Always Steps to Reproduce: 1. Add a user with multi-valued uid: dn: cn=kau23,ou=Users,dc=example,dc=com objectClass: account objectClass: posixAccount uidNumber: 232323 gidNumber: 232323 homeDirectory: /home/kau23 userPassword:: U2VjcmV0MTIz uid: kau23_1 uid: kau23 cn: kau23 2. Enumerate the first uid name. # getent -s sss passwd kau23_1 kau23_1:*:232323:232323:kau23:/home/kau23: 3. Enumerate the second uid name. # getent -s sss passwd kau23 # echo $? 2 Actual results: Unable to enumerate the secondary uid names. Expected results: Enumerating kau23 should return: kau23_1:*:232323:232323:kau23:/home/kau23: Additional info: /var/log/sssd/sssd_LDAP.log shows: (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_id_op_connect_done] (9): notify connected to op #1 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (6): calling ldap_search_ext with [(&(uid=kau23)(objectclass=posixAccount))][dc=example,dc=com]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [objectClass] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [uid] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [userPassword] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [uidNumber] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [gidNumber] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [gecos] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [homeDirectory] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [loginShell] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [krbPrincipalName] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [cn] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [modifyTimestamp] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowLastChange] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowMin] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowMax] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowWarning] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowInactive] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowExpire] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [shadowFlag] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [krbLastPwdChange] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [krbPasswordExpiration] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [pwdAttribute] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [authorizedService] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [accountExpires] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [userAccountControl] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (7): Requesting attrs: [nsAccountLock] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_step] (8): ldap_search_ext called, msgid = 3 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_id_op_connect_done] (9): caching successful connection after 1 notifies (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: sh[0x21a6630], connected[1], ops[0x21a6870], ldap[0x21a60c0] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: ldap_result found nothing! (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: sh[0x21a6630], connected[1], ops[0x21a6870], ldap[0x21a60c0] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_parse_entry] (9): OriginalDN: [cn=kau23,ou=Users,dc=example,dc=com]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: sh[0x21a6630], connected[1], ops[0x21a6870], ldap[0x21a60c0] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_done] (6): Search result: Success(0), (null) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_generic_done] (7): Total count [0] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_users_process] (6): Search for users, returned 1 results. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 0) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (9): Save user (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (8): Comparing attribute names [cn] and [uid] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (3): The entry has multiple names and the RDN attribute does not match. Will use the first value as fallback. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Adding original DN [cn=kau23,ou=Users,dc=example,dc=com] to attributes of [kau23_1]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Original memberOf is not available for [kau23_1]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Original USN value is not available for [kau23_1]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): User principal is not available for [kau23_1]. (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_user] (6): Storing info for user kau23_1 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 1) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x21af1a0 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x21bc000 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x21bc000 "ltdb_timeout" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x21af1a0 "ltdb_callback" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sysdb_search_user_by_name] (6): Error: 2 (No such file or directory) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 2) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x21bbfe0 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x21bbcb0 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x21bbcb0 "ltdb_timeout" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x21bbfe0 "ltdb_callback" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sysdb_search_user_by_uid] (6): Error: 2 (No such file or directory) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 3) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x21be490 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x21be5b0 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x21be5b0 "ltdb_timeout" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x21be490 "ltdb_callback" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 3) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 3) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x21be5b0 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x21bef00 (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x21bef00 "ltdb_timeout" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x21be5b0 "ltdb_callback" (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 3) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 2) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 1) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_save_users] (9): User 0 processed! (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 0) (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_get_users_process] (9): Saving 1 Users - Done (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_id_op_done] (9): releasing operation connection (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [acctinfo_callback] (4): Request processed. Returned 0,0,Success (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: sh[0x21a6630], connected[1], ops[(nil)], ldap[0x21a60c0] (Thu Sep 15 14:02:49 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: ldap_result found nothing!
Lookup of the non-primary username works now: # getent -s sss passwd kau23 kau23_1:*:232323:232323:kau23:/home/kau23: sssd_LDAP.log shows: (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_parse_entry] (9): OriginalDN: [cn=kau23,ou=Users,dc=example,dc=com]. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_process_result] (8): Trace: sh[0x21e77a0], connected[1], ops[0x2284ec0], ldap[0x21e7db0] (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_get_generic_done] (6): Search result: Success(0), (null) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_get_generic_done] (7): Total count [0] (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_get_users_process] (6): Search for users, returned 1 results. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 0) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (9): Save user (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (8): Comparing attribute names [cn] and [uid] (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (3): The entry has multiple names and the RDN attribute does not match. Will use the first value as fallback. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Adding original DN [cn=kau23,ou=Users,dc=example,dc=com] to attributes of [kau23_1]. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Original memberOf is not available for [kau23_1]. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): Original USN value is not available for [kau23_1]. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (7): User principal is not available for [kau23_1]. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_user] (6): Storing info for user kau23_1 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 1) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x22a06b0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x22a07d0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x22a07d0 "ltdb_timeout" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x22a06b0 "ltdb_callback" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_search_user_by_name] (6): Error: 2 (No such file or directory) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 2) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x22a06b0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x22a0330 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x22a0330 "ltdb_timeout" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x22a06b0 "ltdb_callback" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_search_user_by_uid] (6): Error: 2 (No such file or directory) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 3) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x22a2cb0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x22a2dd0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x22a2dd0 "ltdb_timeout" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x22a2cb0 "ltdb_callback" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 3) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): start ldb transaction (nesting: 3) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x22a36a0 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x2279970 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x2279970 "ltdb_timeout" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x22a36a0 "ltdb_callback" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 3) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 2) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 1) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_save_users] (9): User 0 processed! (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (8): Comparing attribute names [cn] and [uid] (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_attrs_primary_name] (3): The entry has multiple names and the RDN attribute does not match. Will use the first value as fallback. (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_callback": 0x22a3560 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Added timed event "ltdb_timeout": 0x2279970 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Destroying timer event 0x2279970 "ltdb_timeout" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): tevent: Ending timer event 0x22a3560 "ltdb_callback" (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sysdb_search_user_by_name] (6): Error: 2 (No such file or directory) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_check_aliases] (9): No user with primary name same as alias kau23 (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [ldb] (9): commit ldb transaction (nesting: 0) (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_get_users_process] (9): Saving 1 Users - Done (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [sdap_id_op_done] (9): releasing operation connection (Thu Oct 13 06:08:54 2011) [sssd[be[LDAP]]] [acctinfo_callback] (4): Request processed. Returned 0,0,Success
Verified in version: # rpm -qi sssd | head Name : sssd Relocations: (not relocatable) Version : 1.5.1 Vendor: Red Hat, Inc. Release : 55.el6 Build Date: Thu 06 Oct 2011 08:55:50 PM IST Install Date: Wed 12 Oct 2011 04:55:20 PM IST Build Host: x86-001.build.bos.redhat.com Group : Applications/System Source RPM: sssd-1.5.1-55.el6.src.rpm Size : 3576801 License: GPLv3+ Signature : (none) Packager : Red Hat, Inc. <http://bugzilla.redhat.com/bugzilla> URL : http://fedorahosted.org/sssd/ Summary : System Security Services Daemon
Technical note added. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. New Contents: Cause: SSSD didn't store alternative entry names in case the entry had them. Consequence: Entries with multiple names stored in SSSD cache weren't returned by SSSD to NSS client in case they were stored with different name than what NSS client asked for. Fix: SSSD stores all name aliases in cache. When asked, it matches given name against primary name as well as all aliases. Result: When asking for entry stored in SSSD cache with different name, that entry is correctly returned.
Technical note updated. If any revisions are required, please edit the "Technical Notes" field accordingly. All revisions will be proofread by the Engineering Content Services team. Diffed Contents: @@ -1,4 +1,4 @@ Cause: SSSD didn't store alternative entry names in case the entry had them. Consequence: Entries with multiple names stored in SSSD cache weren't returned by SSSD to NSS client in case they were stored with different name than what NSS client asked for. -Fix: SSSD stores all name aliases in cache. When asked, it matches given name against primary name as well as all aliases. +Fix: SSSD stores name aliases in cache in addition to the primary name -Result: When asking for entry stored in SSSD cache with different name, that entry is correctly returned.+Result: SSSD is able to return users when queried for either primary or secondary names. SSSD however always return the primary name, even when queried for the secondary name.
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/RHBA-2011-1529.html