HomePhabricator

Resolve LDAP registration DAO exception due to empty username

Tags
None
Referenced Files
None
Subscribers
None
Tokens
"Love" token, awarded by briancline.

Description

Resolve LDAP registration DAO exception due to empty username

Summary:
When logging in as an LDAP user for the first time (thus registering), a DAO exception was being thrown because PhabricatorLDAPRegistrationController wasn't passing in a username to PhabricatorUser::setUsername().

Somewhat separately, since either the PHP LDAP extension's underlying library or Active Directory are returning attributes with lowercased key names, I have to search on sAMAccountName and look for the key samaccountname in the results; this is fine since the config allows these to be defined separately. However I found that PhabricatorLDAPProvider::retrieveUserName() was attempting to use the search attribute rather than the username attribute. This resolves.

Test Plan: Tested registration and login against our internal AD infrastructure; worked perfectly. Need help from someone with access to a functional non-AD LDAP implementation; I've added the original author and CCs from D2722 in case they can help test in this regard.

Reviewers: epriestley, voldern

Reviewed By: voldern

CC: voldern, aran, Korvin, auduny, svemir

Differential Revision: https://secure.phabricator.com/D3340

Details

Provenance
brianclineAuthored on
epriestleyCommitted on Aug 24 2012, 3:43 PM
Reviewer
voldern
Differential Revision
Restricted Differential Revision
Parents
rP5a0b640ccd00: Bump cache version
Branches
Unknown
Tags
Unknown