Node.js使用护照和passport-ldapauth进行LDAP身份验证

时间:2017-10-19 10:45:35

标签: node.js ldap passport.js

尝试在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);
});

0 个答案:

没有答案