UNPKG

1.67 kBJavaScriptView Raw
1'use strict'
2// ldap library
3const ldap = require('ldapjs')
4const ldapChanges = require('./changes')
5const _resetPassword = require('./resetPassword')
6const _changePassword = require('./changePassword')
7const _authenticate = require ('./authenticate')
8const _getUser = require ('./getUser')
9const _adminGetUser = require ('./adminGetUser')
10const _listUsers = require ('./listUsers')
11const _createUser = require ('./createUser')
12const _disableUser = require ('./disableUser')
13const _enableUser = require ('./enableUser')
14
15module.exports = class ldapClient {
16 constructor (url, baseDn) {
17 // console.log('creating LDAP client')
18 this.url = url
19 this.baseDn = baseDn
20 // console.log('LDAP client created.')
21 }
22
23 getClient () {
24 // create client connection
25 const url = this.url
26 const client = ldap.createClient({ url, reconnect: true })
27 client.on('error', (err) => {
28 console.warn('LDAP connection terminated on far-end, but it should reconnect.', err);
29 })
30 return client
31 }
32
33 resetPassword (params) {
34 return _resetPassword.call(this, params)
35 }
36
37 changePassword (params) {
38 return _changePassword.call(this, params)
39 }
40
41 authenticate (params) {
42 return _authenticate.call(this, params)
43 }
44
45 getUser (params) {
46 return _getUser.call(this, params)
47 }
48
49 adminGetUser (params) {
50 return _adminGetUser.call(this, params)
51 }
52
53 listUsers (params) {
54 return _listUsers.call(this, params)
55 }
56
57 createUser (params) {
58 return _createUser.call(this, params)
59 }
60
61 enableUser (params) {
62 return _enableUser.call(this, params)
63 }
64
65 disableUser (params) {
66 return _disableUser.call(this, params)
67 }
68}