2017-05-31 94 views
0

我有條目這樣的遠程LDAP服務器:LDAPjs找到入口知道CN

CN=Fred Foobar, OU=Dept1, O=FooBar 

使用LDAPjs作爲客戶,我怎麼找到這個條目時只有CN在運行知道?

我曾嘗試以下每一項,但沒有成功:

ldap.search("cn=Fred Foobar", {}, callback); // returns an error 
ldap.search("", {filter: "(cn=Fred Foobar)"}, callback); // returns nothing useful 
ldap.search("", {filter: "(cn=Fred Foobar)", scope: "sub"}, callback); // returns an error 

回答

0

我從來沒有使用過ldapjs,但是從文檔我會嘗試:

ldap.search("O=FooBar", {scope:"sub", filter:"(cn=Fred Foobar)"},function(err, res) { 
    // Code to handle the result 
}); 

見文件:http://ldapjs.org/client.html#search

+0

但是,在運行時,我只有用戶的CN,而不是DN的其餘部分。 – user1207177

+0

另外,'callback'的引用覆蓋了'function(err,result){/ *代碼來處理result * /}'。 – user1207177

+0

@ user1207177這裏我也沒有用戶dn,因爲第一個參數是目錄的baseDN,這是目錄中所有條目共有的根目錄dn。我假設你的例子的價值。如果你知道存儲所有用戶的子dn,就把它放在這個子樹中,它將會限制搜索到這個子樹 – Esteban