ホームページ  >  記事  >  ウェブフロントエンド  >  node.js での LDAP クエリの概要

node.js での LDAP クエリの概要

不言
不言オリジナル
2018-06-30 14:00:333149ブラウズ

この記事では主に、node.js で LDAP クエリの例を共有するための関連情報を紹介します。必要な友人は参照してください。

目標:

LDAP サーバーから uid=kxh のユーザー データを取得します。

LDAP アドレスは次のとおりです。 ldap: //10.233.21.116:389

プロジェクトのルートディレクトリで、まずLDAPアクセスライブラリをnpmしますldpajs

npm install ldapjs

プロジェクトのルートディレクトリにapp.jsを作成します

var ldap = require("ldapjs");

//创建LDAP client,把服务器url传入
var client = ldap.createClient({
 url: 'ldap://10.203.24.216:389'
});

//创建LDAP查询选项
//filter的作用就是相当于SQL的条件
var opts = {
 filter: '(uid=kxh)', //查询条件过滤器,查找uid=kxh的用户节点
 scope: 'sub',    //查询范围
 timeLimit: 500    //查询超时
};

//将client绑定LDAP Server
//第一个参数:是用户,必须是从根节点到用户节点的全路径
//第二个参数:用户密码
client.bind('uid=supbind,cn=users,dc=tiger,dc=com', '123456', function (err, res1) {

  //开始查询
  //第一个参数:查询基础路径,代表在查询用户信心将在这个路径下进行,这个路径是由根节开始
  //第二个参数:查询选项
  client.search('DC=tiger,DC=com', opts, function (err, res2) {

    //查询结果事件响应
    res2.on('searchEntry', function (entry) {
      
      //获取查询的对象
      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());
    });  
    
    //查询错误事件
    res2.on('error', function(err) {
      console.error('error: ' + err.message);
      //unbind操作,必须要做
      client.unbind();
    });
    
    //查询结束
    res2.on('end', function(result) {
      console.log('search status: ' + result.status);
      //unbind操作,必须要做
      client.unbind();
    });    
    
  });
  
});

上記は全体ですこの記事の内容が皆さんの学習に役立つことを願っています。その他の関連コンテンツについては、PHP 中国語 Web サイトに注目してください。

関連する推奨事項:

node.jsをMongoDBデータベースに接続する2つの方法について

Node.jsで簡単なチャットルームを作る方法

NodeJsのフォームデータ形式でファイルを転送する方法

以上がnode.js での LDAP クエリの概要の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。