2016-06-10 5 views
0
  1. passport-ldapauth npm을 사용하여 사용자 이름과 암호를 인증하려고합니다. 아래 코드를 실행하는 동안 나는 항상 잘못된 요청으로 오류가 발생합니다. 제 코드를 잘못 해석해주세요.passport-ldapauth를 사용하여 잘못된 요청 오류가 발생했습니다.

    var express  = require('express'), 
        passport  = require('passport'), 
        bodyParser = require('body-parser'), 
        LdapStrategy = require('passport-ldapauth'); 
    
    // Credentials from the free LDAP test server by LDAP Search 
    
    var OPTS = { 
        server: { 
    
        url: 'ldap://54.227.207.201:389', 
        bindDn: 'CN=simple One,CN=Users,DC=test,DC=local', 
        bindCredentials: 'password', 
        searchBase: 'ou=passport-ldapauth', 
        searchFilter: '(uid={{username}})' 
        }, 
        usernameField: "CN=simple One,CN=Users,DC=test,DC=local", 
        passwordField: "password" 
    }; 
    
    var app = express(); 
    
    passport.use(new LdapStrategy(OPTS)); 
    
    app.use(bodyParser.json()); 
    
    app.use(bodyParser.urlencoded({extended: false})); 
    
    app.use(passport.initialize()); 
    
    
    app.use(passport.session());  
    
    app.post('/login', passport.authenticate('ldapauth', {session: false}), function(req, res) { 
    
    // you can refer code from here:https://github.com/vesse/passport-ldapauth 
    
        res.send({status: 'ok'});//will generate error 'Bad Request' 
    
    }); 
        /*For more info:https://github.com/vesse/passport-ldapauth/issues/45*/ 
    

답변

0

passport-ldapauth 반환 잘못된 요청 either username or password value is missing. 귀하의 경우 이것은 아마도 usernameField: "CN=simple One,CN=Users,DC=test,DC=local"을 정의했기 때문일 수 있습니다. 로그인 양식은 readme에 언급 된 이름으로 필드에 로그인 할 때 사용할 사용자 이름이 있어야합니다.

로그인 양식 (또는 XHR 게시물)이 weirdUsername 인 필드에 사용자 이름을 보내는 경우 (예 : <input type="text" name="weirdUsername"/>이면 usernameField : weirdUsername을 정의합니다. 추가 정보에서 언급 한 기본값은 사용자 이름은 username이고 암호는 password입니다.

+0

나는 우편 배달부를 사용하여 NodeJS에서 passport-ldapauth를 테스트하려고하는데 항상 잘못된 요청을 계속받습니다. 내가 도대체 ​​뭘 잘못하고있는 겁니까? 나는 Read me에 언급 된 지침을 따랐다. – codejunkie

+0

추신 : 나는 LDAP 인증을받은 초보자입니다. – codejunkie

+0

ldaps를 사용하고 있고 usernamefield와 passwordField가 올바르게 채워져 있습니다. – codejunkie

관련 문제