Skip to content

shaozi/passport-ldap-example

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

18 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

An Example to use ldap-authentication as a Passport Strategy

This example uses ldap-authtication to create a Passport LDAP authentication strategy.

Installation

  1. npm install

Work flow

  1. node index.js to start the server
  2. Launch browser and goto http://localhost:4000
  3. Login as prompted
  4. Try different username and password

How does it work

This example uses ldap-authentication and put it in passport-custom to create a complete Passport strategy.

The LDAP server is hosted at forumsys and it has a few simple users to test with.

The information of the LDAP server is saved in config.js file.

ldap-authtication takes the username and password from the submitted form, with the ldap configurations from config.js file, it then constructs an option object:

const CONFIG = require('./config.js')
// ...
let ldapBaseDn = CONFIG.ldap.dn
let options = {
  ldapOpts: {
    url: CONFIG.ldap.url
  },
  userDn: `uid=${req.body.username},${ldapBaseDn}`,
  userPassword: req.body.password,
  userSearchBase: ldapBaseDn,
  usernameAttribute: 'uid'
}

then it calls let user = await authenticate(options) to authenticate and retrieve user from the LDAP server.

I encourage you to check the index.js file for details. Clone this repo and play with it yourself!

About

ldap authentication strategy for Passport

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •