Articles of ldap

ldapjsauthentication(用户login设置)

所以我目前正在运行node.js,它已经安装了ldapjs。 我的目标是build立一个使用ldapjs来允许用户使用用户名和密码login的系统。 我一直在阅读http://ldapjs.org文档一段时间,但我正在努力理解ldap和ldapjs实现它的整个想法。 我目前从文档中有这个 var ldap = require('ldapjs'); var server = ldap.createServer(); server.bind('cn=root', function(req, res, next) { if (req.dn.toString() !== 'cn=root' || req.credentials !== 'secret') return next(new ldap.InvalidCredentialsError()); res.end(); return next(); }); server.listen(1389, function() { console.log('LDAP server up at: %s', server.url); }); 这允许我运行下面的并成功绑定到服务器。 ldapsearch -H ldap://localhost:1389 -x -D cn=root -w secret -LLL -b "o=myhost" objectclass=* […]

在使用JSON.stringify的Node.js中导致“进程内存不足”错误

使用节点我试图从LDAP服务器收集用户数据,然后将这些数据写入JSON文件。 我正在使用下面的代码来执行此操作: fs.writeFile('data.json', JSON.stringify(data, null, 4)); 问题是JSON.stringify方法导致以下错误: FATAL ERROR: JS Allocation failed – process out of memory 我知道问题是与JSON.stringify因为如果我使用console.log而不是fs.writeFile我得到相同的错误。 我正在尝试编写大量数据(在LDAP数据库中有超过500个条目)。 有谁知道我怎么能得到这个工作? 这是完整的代码: var ldap = require('ldapjs'); var util = require('util'); var fs = require('fs'); var client = ldap.createClient({ url: '************' }); client.bind('CN=**********,OU=Users,OU=LBi UK,OU=UK,DC=********,DC=local', '*********', function(err) { if (err) { console.log(err.name); } }); // taken from http://ldapjs.org/client.html […]

LDAP绑定错误使用node.js和ldapjs

我正在尝试使用下面的node.js文件实现基本的ldap绑定。 不幸的是,我不断收到代码128的绑定错误。我在网上查找,发现没有代码128的引用。我试图search的LDAP服务器是一个eDirectory。 有没有人有这方面的经验,或者你有类似的问题? 我的节点版本是v0.10.22,我的ldapjs版本是v0.7.1 var ldap = require('ldapjs'); var creds = { url: "ldaps://ldap.url.com:636", bindDN: "cn=ldap,o=com" }; var opts = { filter: "(cn=username)", scope: "sub" }; function authDN(client, dn, password, cb) { client.bind(dn, password, function (err) { client.unbind(); cb(err === null, err); }); } function output(res, err) { if (res) { console.log('success'); } else { […]

nodejs passport ldapauth“无法读取”属性的undefined“

我正尝试使用passport-ldapauth和express来validationLDAP服务器。 使用ldap url(ldap:// myserver …)进行身份validation的工作正常,但是使用ldaps可以获得: TypeError:无法读取未定义的属性'on' 在setupSocket(… \ ldapauth-fork \ node_modules \ ldapjs \ lib \ client \ client.js:111:14) 在Client._connect(… \ ldapauth-fork \ node_modules \ ldapjs \ lib \ client \ client.js:742:3) 在新客户端(… \ ldapauth-fork \ node_modules \ ldapjs \ lib \ client \ client.js:247:22) 在Object.createClient(… \ ldapauth-fork \ node_modules \ ldapjs \ lib \ […]

覆盖meteor的默认login处理程序

我正在使用NPM ldapjs和这个Meteor LDAP项目来尝试在我的testingTelescope网站上启用LDAP。 主要问题是我希望LDAP是login的唯一方法。我的计划是围绕内置的望远镜(Meteor?)login方法进行封装。 如果LDAP凭证通过,它将运行Telescopelogin脚本并继续正常。 也许这是一个拙劣的解决scheme,存在一个更好的解决scheme? 无论如何,我需要LDAP来工作。 现在,我试图用这个覆盖默认的login方法: Template.signin.events({ 'submit': function(event, template){ Session.set('errorMessage', null); event.preventDefault(); console.log("My login script ran!"); // I never see this message =( return Meteor.loginWithLDAP(template.find('#login-username').value, template.find('#login-password').value, function(error) { return Session.set('errorMessage', 'Login failed'); }); } }); 正如评论所说,日志命令永远不会运行(我知道,因为我使用的是Chrome,而试图login后的控制台是空白的),另外,每次加载页面都会得到这个结果: Uncaught TypeError: Cannot read property 'events' of undefined (anonymous function) @ ldap_client.js:45 (anonymous function) @ typ_accounts-ldap.js?0ad074ecfc292bededc7d318da4746392aa0f5f8:94 […]

Meteor.js和LDAP

在不久的将来,LDAPauthentication将被整合到Meteor.js中吗? 有关如何使这个工作今天的任何提示?

ldap nodejs主动目录authentication

我目前正在使用node.js中的一个Web应用程序,用户需要login才能访问这些信息。 我想检查用户login名和密码与外部活动目录服务器。 我曾尝试使用node-ldapauth,但我无法得到它的工作(我不知道它是否适用于活动目录,也许只是openLdap)。 有什么build议么?

configurationpassport-ldap

试图使用这个包: https : //www.npmjs.com/package/passport-ldapauth 我设法find我的公司的ldap设置在一个medawikiserver(php) $wgLDAPDomainNames = array("COMPANY"); $wgLDAPGroupBaseDNs = array("COMPANY"=>"dc=company,dc=se"); $wgLDAPAutoAuthDomain = "COMPANY"; $wgLDAPGroupUseFullDN = array("COMPANY"=>true ); $wgLDAPServerNames = array("COMPANY"=>"dcst.company.se"); $wgLDAPSearchStrings = array("COMPANY" => "COMPANY\\USER-NAME" ); $wgLDAPSearchAttributes = array("COMPANY"=>"sAMAccountName"); $wgLDAPBaseDNs = array("COMPANY"=>"dc=company,dc=se"); $wgLDAPEncryptionType = array("COMPANY" => "ssl" ); $wgMinimalPasswordLength = 1; 我需要将其映射到节点包。 我试过这个: var opts = { server: { url: 'ldaps://dcst.company.se', bindDn: 'dc=company,dc=se', //bindCredentials: […]

节点JS LDAPauthentication用户

我正在创build一个login身份validation页面,在那里用户将input活动目录的用户名和密码,并使用NodeJS我会检查,看看是否有效,但我不断 [Error: LDAP Error Bad search filter] 要么 [Error: Search returned != 1 results] 当我试图search用户名和密码时,我的代码如下: 我使用的是: https : //github.com/jeremycx/node-LDAP ,假设用户input了hhill的用户名 var ldap = require('LDAP'); var ldapServer = new ldap({ uri: 'ldap://batman.lan', version: 3}); ldapServer.open(function(error) { if(error) { throw new Error('Cant not connect'); } else { console.log('—- connected to ldap —-'); username = '(cn='+username+')'; ldapServer.findandbind({ base: […]