Merge pull request #770 from SISheogorath/fix/ldapUUID
Add check for undefined UUID
This commit is contained in:
commit
5361a97188
1 changed files with 8 additions and 1 deletions
|
@ -23,11 +23,18 @@ passport.use(new LDAPStrategy({
|
|||
tlsOptions: config.ldap.tlsOptions || null
|
||||
}
|
||||
}, function (user, done) {
|
||||
var uuid = user.uidNumber || user.uid || user.sAMAccountName
|
||||
var uuid = user.uidNumber || user.uid || user.sAMAccountName || undefined
|
||||
if (config.ldap.useridField && user[config.ldap.useridField]) {
|
||||
uuid = user[config.ldap.useridField]
|
||||
}
|
||||
|
||||
if (typeof uuid === 'undefined') {
|
||||
throw new Error('Could not determine UUID for LDAP user. Check that ' +
|
||||
'either uidNumber, uid or sAMAccountName is set in your LDAP directory ' +
|
||||
'or use another unique attribute and configure it using the ' +
|
||||
'"useridField" option in ldap settings.')
|
||||
}
|
||||
|
||||
var username = uuid
|
||||
if (config.ldap.usernameField && user[config.ldap.usernameField]) {
|
||||
username = user[config.ldap.usernameField]
|
||||
|
|
Loading…
Reference in a new issue