1

私は LDAP 初心者です。

私はnodejsのldapauthを使用してい32 - No Such Objectます.

これが私のコードです:

var LdapAuth = require('ldapauth');
var ldapOptions = {
    "url":"ldap://my-host:389",
    "adminDn" : "cn=manager,dc=guycrc,dc=com",
    "adminPassword":"secret",
    "searchBase":"ou=Engineering",
    "searchFilter":"(uid={{username}})"
};

var ldapAuthClient = new LdapAuth( ldapOptions );

ldapAuthClient.authenticate('Dana', 'Dana',
    function(err, result) {
        if (err) {
            console.log(['Error',err.code, err.dn, err.message ]);
        } else {
            console.log('Credentials valid = ' + result); // true or false
        }
    }
);

これは私の LDAP 情報です - 質問に関連すると思われるもの

dn: cn=Dana,ou=people,dc=guycrc,dc=com
...
cn: Dana Dana
sn: Dana
uid: Dana
userpassword: Dana
ou: Engineering


dn: cn=CompanyA,ou=groups,dc=guycrc,dc=com
...
cn: CompanyA
ou: Groups
member: cn=Dana,ou=people,dc=guycrc,dc=com

なぜ私はいつも得No Such Objectているのですか?

4

2 に答える 2

2

検索ベース オブジェクトou=engineeringはおそらく意図したものではありません。その値は DN ではなく、RDN のように見えます。クライアントが検索するオブジェクトより上位の DN となる、完全で正しい検索ベース オブジェクトを使用します。

こちらもご覧ください

于 2013-07-01T15:32:04.910 に答える