Ich benutze diesen Code für ldap Authentifizierung mit Pass-ladpjs-Modul.Es gibt keine Notwendigkeit der Bindung, wie es bereits in dem Modul gesorgt wurde. Nachdem ich meine Zugangsdaten benutzt habe, kann ich mich nicht einloggen. Nachdem ich meine Zugangsdaten eingegeben habe, gehe ich zurück zur Fehlerumleitungsseite. Bitte helfen Sie mir dabei.ldap Authentifizierung mit Pass-ldapjs
var LdapStrategy = require('passport-ldapjs').Strategy;
var opts = {
server: {
url: 'myserver:1111',
},
base: 'dc=domain,dc=com',
search: {
filter: '(sAMAccountName={{username}})',
attributes: ['displayName', 'mail','sAMAccountName','sn'],
scope: 'sub'
},
uidTag: 'cn',
usernameField: 'username',
passwordField: 'password'
};
passport.use(new LdapStrategy(opts, function(profile, done) {
console.log("Ldap Strategy entered !");
var userObj = {};
if (profile) {
console.log("Profile : " + JSON.stringify(profile));
userObj.id = profile.givenName;
return done(null, userObj);
} else {
console.log("User not found");
return done('User not found');
}
}));
Unten finden Sie den Code für das Routing
app.post('/signin', passport.authenticate('ldap', {failureRedirect: 'signin'}), function(req, res){
console.log("Login user : " + req.user.id);
res.render('index', {data:{id:req.user.id, hash:req.user.hash, nodePollInterval:req.user.nodePollInterval}});
});