From ac53c4a04dc477cff027063bb2b43b11e7acac7f Mon Sep 17 00:00:00 2001 From: Martin Goik <goik@hdm-stuttgart.de> Date: Sat, 20 May 2017 15:42:31 +0200 Subject: [PATCH] OpenLdap related Bug fixes --- .../node_modules/nodebb-plugin-office-ldap/index.js | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/Forum/Nodebb/Patch/node_modules/nodebb-plugin-office-ldap/index.js b/Forum/Nodebb/Patch/node_modules/nodebb-plugin-office-ldap/index.js index dd60d6d12..ad7915b20 100644 --- a/Forum/Nodebb/Patch/node_modules/nodebb-plugin-office-ldap/index.js +++ b/Forum/Nodebb/Patch/node_modules/nodebb-plugin-office-ldap/index.js @@ -124,7 +124,7 @@ override: function () { var options = { - url: config.server + ':' + config.port + url: "ldap://learn.mi.hdm-stuttgart.de:389" //config.server + ':' + config.port }; passport.use(new local_strategy({ @@ -139,10 +139,10 @@ var userdetails = username.split('@'); var client = ldapjs.createClient(options); if (userdetails.length == 1) { - username = username.trim() + '@' + office_ldap.get_domain(config.base); + //username = username.trim() + '@' + office_ldap.get_domain(config.base); } - - client.bind(username, password, function(err) { + var bindDn = "uid=" + username.trim() + ",ou=userlist,dc=hdm-stuttgart,dc=de"; + client.bind(bindDn, password, function(err) { if (err) { winston.error(err.message); return next(new Error('[[error:invalid-password]]')); @@ -152,7 +152,6 @@ scope: 'sub', sizeLimit: 1 }; - client.search(config.base, opt, function (err, res) { if (err) { return next(new Error('[[error:invalid-email]]')); @@ -160,12 +159,12 @@ res.on('searchEntry', function(entry) { var profile = entry.object; - var id = office_ldap.murmurhash3_32_gc(profile.displayName); + var id = office_ldap.murmurhash3_32_gc(profile.cn); if (!profile.mail) { profile.mail = username; } - office_ldap.login(id, profile.displayName, profile.mail, function (err, userObject) { + office_ldap.login(id, profile.cn, profile.mail, function (err, userObject) { if (err) { winston.error(err); return next(new Error('[[error:invalid-email]]')); -- GitLab