尝试在Node.js中为LDAP创建auth机制。我有一个测试服务器,我可以在终端上用ldapsearch连接它:
ldapsearch -LLL -H "ldaps://my.custom.sample.server:636"
-s sub -b "dc=custom,dc=sample,dc=server" -x
-D "LDAP_LOGIN@custom.sample.server"
-W uid=SOME_USER
我被要求输入LDAP_LOGIN的密码,我收到回复。
但是当我尝试使用护照-ldapauth的护照时,我没有得到任何回复(甚至不是badCredentialsError)
这是我的代码:
var passport = require('passport');
var LdapStrategy = require('passport-ldapauth');
passport.use(new LdapStrategy({
server: {
url: "ldaps://my.custom.sample.server:636",
bindDn: 'LDAP_LOGIN@custom.sample.server',
bindCredentials: CONFIG('password'),
searchBase: 'dc=custom,dc=sample,dc=server',
searchFilter: '(uid={{username}})'
}
}, function(err, res, req) {
console.log(err, res, req);
//done(null, profile);
}));
passport.serializeUser(function(user, done) {
done(null, user);
});
passport.deserializeUser(function(obj, done) {
done(null, obj);
});