| Official Backends | Authentification | Utilisateurs | Mot-de-passe |
|---|---|---|---|
| Active Directory | ✔ | ✔ | ✔ |
| Apache (Basic, NTLM, OTP, ...) | ✔ | ||
| CAS | ✔ | | |
| SQL Databases | ✔ | ✔ | ✔ |
| Démonstration | ✔ | ✔ | ✔ |
| ✔ | ✔ | ||
| Kerberos | ✔ | ✔ | ✔ |
| LDAP | ✔ | ✔ | ✔ |
| ✔ | |||
| Null | ✔ | ✔ | ✔ |
| OpenID Connect | ✔ | ✔ | |
| PAM | ✔ | ||
| Proxy LL::NG | ✔ | ✔ | |
| Radius | ✔ | ||
| REST | ✔ | ✔ | ✔ |
| SAML 2.0 / Shibboleth | ✔ | ✔ | |
| Slave | ✔ | ✔ | |
| SSL | ✔ | ||
| ✔ | |||
| WebID | ✔ | ✔ | |
| Yubikey | ✔ | ||
| Custom modules | ✔ | ✔ | ✔ |
| Combo Backends | Authentification | Utilisateurs | Mot-de-passe |
| Choice by users | ✔ | ✔ | ✔ |
| Combination of auth schemes | ✔ | ✔ | |
| | Deprecated, replaced by Combination | ||
| Obsolete Backends | Authentification | Utilisateurs | Mot-de-passe |
| OpenID | ✔ | ✔ | |
| LL::NG distant | ✔ | ✔ | |
| Second factor | Authentification | ||
| U2F | ✔ | ||
| External Second Factor (OTP, SMS,…) | ✔ | ||
| Protocol | Fournisseur de service | Fournisseur d'identité |
|---|---|---|
| CAS 1.0 / 2.0 / 3.0 | ✔ | ✔ |
| SAML 2.0 / Shibboleth | ✔ | ✔ |
| OpenID 2.0 (obsolete) | ✔ | ✔ |
| OpenID Connect | ✔ | ✔ |
| Get parameters provider (for poor applications) | ✔ |
Handlers are software control agents to install on your web servers (Nginx, Apache or Node.js).
| Handler type | Apache | Nginx | Node.js | Commentaire | |
|---|---|---|---|---|---|
| Main (default handler) | ✔ | ✔ | Partial (*) | ||
| AuthBasic | ✔ | ✔ | Designed for some server-to-server applications | ||
| CDA | ✔ | ✔ | For Cross Domain Authentication | ||
| DevOps | ✔ | ✔ | Allows application developers to define their rules within the application | ||
| Secure Token | ✔ | ✔ | Designed to secure dialog between a LLNG reverse-proxy and a remote app | ||
| Service Token (Server-to-Server) | ✔ | ✔ | Designed to permits underlying requests (API-Based Infrastructure) | ||
| Zimbra PreAuth | ✔ | ✔ |
(*): Node.js handler has not yet reached the same level of functionality.
LL::NG a besoin d'un dispositif de stockage de sa propre configuration (gérée par le manager). Choisir l'une des options suivantes :
| Backend | Partageable | Commentaire |
|---|---|---|
| File (JSON) | Not shareable between servers except if used in conjunction with SOAP or with a shared file system (NFS,…). Sélectionné par défaut lors de l'installation. | |
| YAML | Same as File in YAML format instead of JSON | |
| SQL (RDBI/CDBI) | ✔ | Recommended for large-scale systems. Prefer CDBI. |
| LDAP | ✔ | |
| MongoDB | ✔ | |
| SOAP | ✔ | Backend proxy à utiliser avec un autre backend de configuration. Peut être utilisé pour sécuriser un autre backend pour des serveurs distants. |
| REST | ✔ | Backend proxy à utiliser avec un autre backend de configuration. Peut être utilisé pour sécuriser un autre backend pour des serveurs distants. |
Les sessions sont stockées en utilisant les modules de la famille Apache::Session. All Apache::Session style modules are usable except for some features.
| Backend | Partageable | Explorateur de sessions | Resctriction d'ouverture de session | Expiration des sessions | Commentaire |
|---|---|---|---|---|---|
| File | ✔ | ✔ | ✔ | Pas partageable entre serveurs sauf si utilisé avec le backend de configuration SOAP ou un système de partage de fichiers (NFS,…). Sélectionné par défaut lors de l'installation. | |
| SQL | ✔ | ✔ | ✔ | ✔ | Pas optimisé pour l'exlorateur de sessions et les fonctionnalités de session unique. |
| LDAP | ✔ | ✔ | ✔ | ✔ | |
| Redis | ✔ | ✔ | ✔ | ✔ | Le plus rapide. Doit être securisé par un contrôle d'accès réseau. |
| MongoDB | ✔ | ✔ | ✔ | ✔ | Doit être securisé par un contrôle d'accès réseau. |
| Browseable (SQL, Redis ou LDAP) | ✔ | ✔ | ✔ | ✔ | Optimisé pour l'explorateur de sessions et les fonctionnalités de session unique. |
| REST | ✔ | ✔ | ✔ | ✔ | Backend proxy à utiliser avec un autre backend de sessions. Peut être utilisé pour sécuriser un autre backend pour des serveurs distants. |
| SOAP | ✔ | ✔ | ✔ | ✔ | Backend proxy à utiliser avec un autre backend de sessions. Peut être utilisé pour sécuriser un autre backend pour des serveurs distants. |
To develop an handler, see:
To develop a portal plugin, see manpages:
To add a new language:
If you don't want to publish your translation (XX must be replace by your language code):
lemonldap-ng-manager/site/htdocs/static/languages/en.json in lemonldap-ng-manager/site/htdocs/static/languages/XX.json and enable it in “lemonldap-ng.ini” filelemonldap-ng-portal/site/htdocs/static/languages/en.json in lemonldap-ng-portal/site/htdocs/static/languages/XX.json and enable it in “lemonldap-ng.ini” filelemonldap-ng-portal/site/templates/common/mail/en.json in lemonldap-ng-portal/site/templates/common/mail/XX.jsonTo translate this doc (Manager help):