This example uses ldap-authtication to create a Passport LDAP authentication strategy.
npm install
node index.js
to start the server- Launch browser and goto
http://localhost:4000
- Login as prompted
- Try different username and password
This example uses ldap-authtication 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!