目標(biāo):
從一個(gè)LDAP Server獲取uid=kxh的用戶數(shù)據(jù)
LDAP地址為:ldap://10.233.21.116:389
在工程根目錄中,先npm一個(gè)LDAP的訪問(wèn)庫(kù)ldpajs
npm install ldapjs
在工程根目錄中,創(chuàng)建一個(gè)app.js
var ldap = require("ldapjs"); //創(chuàng)建LDAP client,把服務(wù)器url傳入 var client = ldap.createClient({ url: 'ldap://10.203.24.216:389' }); //創(chuàng)建LDAP查詢選項(xiàng) //filter的作用就是相當(dāng)于SQL的條件 var opts = { filter: '(uid=kxh)', //查詢條件過(guò)濾器,查找uid=kxh的用戶節(jié)點(diǎn) scope: 'sub', //查詢范圍 timeLimit: 500 //查詢超時(shí) }; //將client綁定LDAP Server //第一個(gè)參數(shù):是用戶,必須是從根節(jié)點(diǎn)到用戶節(jié)點(diǎn)的全路徑 //第二個(gè)參數(shù):用戶密碼 client.bind('uid=supbind,cn=users,dc=tiger,dc=com', '123456', function (err, res1) { //開(kāi)始查詢 //第一個(gè)參數(shù):查詢基礎(chǔ)路徑,代表在查詢用戶信心將在這個(gè)路徑下進(jìn)行,這個(gè)路徑是由根節(jié)開(kāi)始 //第二個(gè)參數(shù):查詢選項(xiàng) client.search('DC=tiger,DC=com', opts, function (err, res2) { //查詢結(jié)果事件響應(yīng) res2.on('searchEntry', function (entry) { //獲取查詢的對(duì)象 var user = entry.object; var userText = JSON.stringify(user,null,2); console.log(userText); }); res2.on('searchReference', function(referral) { console.log('referral: ' + referral.uris.join()); }); //查詢錯(cuò)誤事件 res2.on('error', function(err) { console.error('error: ' + err.message); //unbind操作,必須要做 client.unbind(); }); //查詢結(jié)束 res2.on('end', function(result) { console.log('search status: ' + result.status); //unbind操作,必須要做 client.unbind(); }); }); });
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com