Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/sdelements/lets-chat-ldap
LDAP plugin for Let's Chat
https://github.com/sdelements/lets-chat-ldap
Last synced: about 2 months ago
JSON representation
LDAP plugin for Let's Chat
- Host: GitHub
- URL: https://github.com/sdelements/lets-chat-ldap
- Owner: sdelements
- License: mit
- Archived: true
- Created: 2015-02-10T22:14:53.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2017-01-12T07:46:39.000Z (almost 8 years ago)
- Last Synced: 2024-04-24T18:54:31.655Z (8 months ago)
- Language: JavaScript
- Size: 12.7 KB
- Stars: 33
- Watchers: 16
- Forks: 12
- Open Issues: 16
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Let's Chat - LDAP Plugin
Add LDAP authentication to [Let's Chat](http://sdelements.github.io/lets-chat/).
### Install
```
npm install lets-chat-ldap
```### Configure
###### Example 1
```yml
auth:
providers: [ldap]ldap:
connect_settings:
url: ldap://ldap.example.com
tlsOptions:
ca: ca.pem
bind_options:
bindDN: uid=letschat,cn=sysusers,cn=accounts,dc=example,dc=com
bindCredentials: Pa$$word123
search:
base: cn=users,cn=accounts,dc=example,dc=com
opts:
scope: one # Base search (base), one level search (one) or subtree search (sub)
filter: (uid={{username}}) # Only {{username}} is available
field_mappings:
uid: uid # LDAP unique ID
username: uid # used for mention (@uid)
firstName: givenName
lastName: sn
displayName: givenName
email: mail
```###### Example 2
```yml
auth:
providers: [ldap]ldap:
connect_settings:
url: ldap://ldap.example.com:389
bind_options:
bindDN: CN=LetsChat,CN=Users,DC=example,DC=com
bindCredentials: Pa$$word123
search:
base: "CN=Users,DC=example,DC=com"
opts:
scope: one
filter: (sAMAccountName={{username}})
field_mappings:
uid: sAMAccountName
firstName: givenName
lastName: sn
displayName: givenName
email: mail
```##### ENV Variables
It's also possible to configure the plugin using the following environment variables:
```
LCB_AUTH_PROVIDERS
LCB_AUTH_LDAP_CONNECT_SETTINGS_URL
LCB_AUTH_LDAP_CONNECT_SETTINGS_TLS_OPTIONS_CA
LCB_AUTH_LDAP_BIND_OPTIONS_BIND_DN
LCB_AUTH_LDAP_BIND_OPTIONS_BIND_CREDENTIALS
LCB_AUTH_LDAP_SEARCH_BASE
LCB_AUTH_LDAP_SEARCH_OPTS_FILTER
LCB_AUTH_LDAP_SEARCH_OPTS_SCOPE
LCB_AUTH_LDAP_FIELD_MAPPINGS_UID
LCB_AUTH_LDAP_FIELD_MAPPINGS_USERNAME
LCB_AUTH_LDAP_FIELD_MAPPINGS_EMAIL
LCB_AUTH_LDAP_FIELD_MAPPINGS_FIRSTNAME
LCB_AUTH_LDAP_FIELD_MAPPINGS_LASTNAME
LCB_AUTH_LDAP_FIELD_MAPPINGS_DISPLAY_NAME
```