diff options
author | Christoph (Sheogorath) Kern | 2017-12-12 10:40:14 +0100 |
---|---|---|
committer | GitHub | 2017-12-12 10:40:14 +0100 |
commit | 454e0f8612acc949531d11cccedc52f7a3c50354 (patch) | |
tree | e9c368d4b2c48b713cd61ae04ff68651269e826a /lib | |
parent | b840c3fa5769d7cdd000d7d15d25696a404f4207 (diff) | |
parent | 17e3b8b5cdd7286899df0c5a36ec818aee3812ce (diff) |
Merge pull request #650 from LukasKalbertodt/ldap-username-field
Add setting `ldap.usernameField`
Diffstat (limited to '')
-rw-r--r-- | lib/config/default.js | 1 | ||||
-rw-r--r-- | lib/config/environment.js | 1 | ||||
-rw-r--r-- | lib/web/auth/ldap/index.js | 8 |
3 files changed, 9 insertions, 1 deletions
diff --git a/lib/config/default.js b/lib/config/default.js index d04485ce..8d36db02 100644 --- a/lib/config/default.js +++ b/lib/config/default.js @@ -96,6 +96,7 @@ module.exports = { searchBase: undefined, searchFilter: undefined, searchAttributes: undefined, + usernameField: undefined, tlsca: undefined }, saml: { diff --git a/lib/config/environment.js b/lib/config/environment.js index 45a2b0e0..27e63591 100644 --- a/lib/config/environment.js +++ b/lib/config/environment.js @@ -71,6 +71,7 @@ module.exports = { searchBase: process.env.HMD_LDAP_SEARCHBASE, searchFilter: process.env.HMD_LDAP_SEARCHFILTER, searchAttributes: toArrayConfig(process.env.HMD_LDAP_SEARCHATTRIBUTES), + usernameField: process.env.HMD_LDAP_USERNAMEFIELD, tlsca: process.env.HMD_LDAP_TLS_CA }, saml: { diff --git a/lib/web/auth/ldap/index.js b/lib/web/auth/ldap/index.js index 9a63578a..cc0d29ad 100644 --- a/lib/web/auth/ldap/index.js +++ b/lib/web/auth/ldap/index.js @@ -24,9 +24,15 @@ passport.use(new LDAPStrategy({ } }, function (user, done) { var uuid = user.uidNumber || user.uid || user.sAMAccountName + var username = uuid + + if (config.ldap.usernameField && user[config.ldap.usernameField]) { + username = user[config.ldap.usernameField] + } + var profile = { id: 'LDAP-' + uuid, - username: uuid, + username: username, displayName: user.displayName, emails: user.mail ? [user.mail] : [], avatarUrl: null, |