• Stars
    star
    126
  • Rank 284,543 (Top 6 %)
  • Language
    Perl
  • License
    MIT License
  • Created almost 13 years ago
  • Updated about 4 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

**UNMAINTAINED.** Simple node.js module to authenticate against an LDAP server

Note: This repo is unmaintained and has been for a while. If you are interested in taking over this repo, then please let me know (trentm at google's email thing).


A simple node.js lib to authenticate against an LDAP server.

Usage

var LdapAuth = require('ldapauth');
var options = {
    url: 'ldaps://ldap.example.com:663',
    ...
};
var auth = new LdapAuth(options);
...
auth.authenticate(username, password, function(err, user) { ... });
...
auth.close(function(err) { ... })

Install

npm install ldapauth

License

MIT. See "LICENSE" file.

LdapAuth Config Options

Use the source Luke

express/connect basicAuth example

var connect = require('connect');
var LdapAuth = require('ldapauth');

// Config from a .json or .ini file or whatever.
var config = {
  ldap: {
    url: "ldaps://ldap.example.com:636",
    adminDn: "uid=myadminusername,ou=users,o=example.com",
    adminPassword: "mypassword",
    searchBase: "ou=users,o=example.com",
    searchFilter: "(uid={{username}})"
  }
};

var ldap = new LdapAuth({
  url: config.ldap.url,
  adminDn: config.ldap.adminDn,
  adminPassword: config.ldap.adminPassword,
  searchBase: config.ldap.searchBase,
  searchFilter: config.ldap.searchFilter,
  //log4js: require('log4js'),
  cache: true
});

var basicAuthMiddleware = connect.basicAuth(function (username, password, callback) {
  ldap.authenticate(username, password, function (err, user) {
    if (err) {
      console.log("LDAP auth error: %s", err);
    }
    callback(err, user)
  });
});

Development

Check coding style before commit:

make check

To cut a release (tagging, npm publish, etc., see https://github.com/trentm/cutarelease for details):

make cutarelease

More Repositories

1

node-bunyan

a simple and fast JSON logging module for node.js services
JavaScript
7,175
star
2

python-markdown2

markdown2: A fast and complete implementation of Markdown in Python
Python
2,636
star
3

json

A "json" command for massaging JSON on your Unix command line.
JavaScript
1,544
star
4

django-markdown-deux

A django app that provides Markdown-related template tags using the python-markdown2 library.
Python
287
star
5

node-dashdash

A light, featureful and explicit option parsing library for node.js.
JavaScript
176
star
6

jirash

CLI and (light) shell for Jira
JavaScript
79
star
7

cmdln

**UNMAINTAINED** a Python module for easily building good multi-command scripts
Python
49
star
8

node-cmdln

node.js helper lib for creating CLI tools with subcommands; think `git`, `svn`, `zfs`
JavaScript
31
star
9

googlecode2github

Helper scripts and docs for moving a project from Google Code project hosting to Github
Python
24
star
10

nodedoc

a fledgling `perldoc` for node.js
Python
18
star
11

python-jira-cli

(my fork of) the Python JIRA command line interface (to add some conveniences)
Python
17
star
12

node-bunyan-winston

demo showing how to use a winston logger with a bunyan-using library (e.g. restify)
JavaScript
17
star
13

node-ansidiff

a small node.js library for ANSI colored text diffs
JavaScript
17
star
14

eol

a command-line script and Python module for working with text file end-of-line (EOL) characters
Python
17
star
15

preprocess

Automatically exported from code.google.com/p/preprocess
Python
15
star
16

node-csvrow

parse a CSV row string (in node.js)
JavaScript
13
star
17

hello-json-logging

An introduction to restify + bunyan for JSON logging in node.js API services.
JavaScript
13
star
18

sources

a command-line script to help get/clone/checkout and update source repos
Python
13
star
19

molybdenum

A git repo browser (for when your git repos aren't on GitHub)
JavaScript
12
star
20

node-expiring-lru-cache

An expiring LRU cache object for node.js
JavaScript
12
star
21

go-tool

Automatically exported from code.google.com/p/go-tool
Python
10
star
22

which

A portal Python GNU which replacement
Python
9
star
23

cutarelease

A script to help cutting releases of your projects in a single step (following some conventions).
Python
8
star
24

dotfiles

Trent's dotfiles
Python
8
star
25

go-ecslog

`ecslog` CLI to pretty-print and filter log files in ecs-logging format
Go
7
star
26

minimalist-python-module

How small can a project be to support a single module Python project.
Python
7
star
27

ircgrep

a command-line tool for grepping through IRC channel logs
Python
6
star
28

mdocml

A mirror/fork of mdocml from <http://mdocml.bsd.lv/>. I'm adding an "html5" output mode.
C
4
star
29

node-kthxbai

Kill Those Huge eXtra (node_module) Bits Absentmindedly Installed
JavaScript
4
star
30

talk-bunyan-in-prod

Slides for a talk called "Bunyan logging in production at Joyent"
JavaScript
3
star
31

otellogsplay

/me playing with OTel logging
JavaScript
2
star
32

python-process

an obsolete Python module for process control (currently unmaintained)
Python
2
star
33

listadmin

Fork of Kjetil Torgrim Homme's "listadmin" script for processing Mailman admin db. I have some minor changes for my personal usage.
Perl
2
star
34

node-ruhroh

helper lib to create the Error classes for restify-based API services
JavaScript
2
star
35

node-tabula

a light function for printing a text table to stdout
JavaScript
2
star
36

testlib

A micro unittest suite harness for Python
Python
1
star
37

trentm.github.com

CSS
1
star
38

lambdock

an example Node.js AWS Lambda Docker container with Elastic APM instrumentation
Dockerfile
1
star
39

npm-registry-proxy

a simple and *limited* proxy for registry.npmjs.org for testing npm
JavaScript
1
star
40

template-node-package

Trent's template for node package (for use with https://help.github.com/en/articles/creating-a-repository-from-a-template)
Makefile
1
star