私はldapが初めてです。ldapauth.js を使用して資格情報を認証しています。
認証にldapauth npmを使用しました。
/*--------------LDAP_AUTH--------------*/
var ldap = require('ldapjs');
var LdapAuth = require('ldapauth');
var server = ldap.createServer();
server.search('o=example', function(req, res, next) {
var obj = {
dn: req.dn.toString(),
attributes: {
objectclass: ['organization', 'top'],
o: 'example'
}
};
if (req.filter.matches(obj.attributes))
res.send(obj);
res.end();
});
server.listen(1389, function() {
console.log('LDAP server listening at %s', server.url);
});
var options = {
url: "ldap://0.0.0.0:1389",
adminDn: "uid=myadminusername,ou=users,o=example",
adminPassword: "mypassword",
searchBase: "ou=users,o=example",
searchFilter: "(uid={{username}})"
};
var auth = new LdapAuth(options);
auth.authenticate('myadminusername', 'mypassword', function(err, user) { console.log('err');
console.log(err);
console.log(err.message);
console.log('user');
console.log(user);
});
auth.close(function(err) { console.log('errorr'); })
コンソールでエラーメッセージが表示されます。
LDAP server listening at ldap://0.0.0.0:1389
err
{ dn: [Getter],
code: [Getter],
name: [Getter],
message: [Getter] }
No tree found for: uid=myadminusername, ou=users, o=example
user
undefined
何が間違っているのかを理解するのを手伝ってください。
御時間ありがとうございます