diff --git a/docs-core/src/main/java/com/sismics/docs/core/constant/ConfigType.java b/docs-core/src/main/java/com/sismics/docs/core/constant/ConfigType.java index 41187f04..e5b2f9d0 100644 --- a/docs-core/src/main/java/com/sismics/docs/core/constant/ConfigType.java +++ b/docs-core/src/main/java/com/sismics/docs/core/constant/ConfigType.java @@ -53,6 +53,7 @@ public enum ConfigType { LDAP_ENABLED, LDAP_HOST, LDAP_PORT, + LDAP_USESSL, LDAP_ADMIN_DN, LDAP_ADMIN_PASSWORD, LDAP_BASE_DN, diff --git a/docs-core/src/main/java/com/sismics/docs/core/util/authentication/LdapAuthenticationHandler.java b/docs-core/src/main/java/com/sismics/docs/core/util/authentication/LdapAuthenticationHandler.java index ac9d405b..f3af472b 100644 --- a/docs-core/src/main/java/com/sismics/docs/core/util/authentication/LdapAuthenticationHandler.java +++ b/docs-core/src/main/java/com/sismics/docs/core/util/authentication/LdapAuthenticationHandler.java @@ -66,6 +66,7 @@ public class LdapAuthenticationHandler implements AuthenticationHandler { LdapConnectionConfig config = new LdapConnectionConfig(); config.setLdapHost(ConfigUtil.getConfigStringValue(ConfigType.LDAP_HOST)); config.setLdapPort(ConfigUtil.getConfigIntegerValue(ConfigType.LDAP_PORT)); + config.setUseSsl(ConfigUtil.getConfigBooleanValue(ConfigType.LDAP_USESSL)); config.setName(ConfigUtil.getConfigStringValue(ConfigType.LDAP_ADMIN_DN)); config.setCredentials(ConfigUtil.getConfigStringValue(ConfigType.LDAP_ADMIN_PASSWORD)); diff --git a/docs-web/src/main/java/com/sismics/docs/rest/resource/AppResource.java b/docs-web/src/main/java/com/sismics/docs/rest/resource/AppResource.java index f64b2d2b..684d380b 100644 --- a/docs-web/src/main/java/com/sismics/docs/rest/resource/AppResource.java +++ b/docs-web/src/main/java/com/sismics/docs/rest/resource/AppResource.java @@ -754,6 +754,7 @@ public class AppResource extends BaseResource { response.add("enabled", true) .add("host", ConfigUtil.getConfigStringValue(ConfigType.LDAP_HOST)) .add("port", ConfigUtil.getConfigIntegerValue(ConfigType.LDAP_PORT)) + .add("usessl", ConfigUtil.getConfigBooleanValue(ConfigType.LDAP_USESSL)) .add("admin_dn", ConfigUtil.getConfigStringValue(ConfigType.LDAP_ADMIN_DN)) .add("admin_password", ConfigUtil.getConfigStringValue(ConfigType.LDAP_ADMIN_PASSWORD)) .add("base_dn", ConfigUtil.getConfigStringValue(ConfigType.LDAP_BASE_DN)) @@ -777,6 +778,7 @@ public class AppResource extends BaseResource { * @apiParam {Boolean} enabled LDAP authentication enabled * @apiParam {String} host LDAP server host * @apiParam {Integer} port LDAP server port + * @apiParam {Boolean} use SSL (ldaps) * @apiParam {String} admin_dn Admin DN * @apiParam {String} admin_password Admin password * @apiParam {String} base_dn Base DN @@ -791,6 +793,7 @@ public class AppResource extends BaseResource { * @param enabled LDAP authentication enabled * @param host LDAP server host * @param portStr LDAP server port + * @param usessl LDAP use SSL (ldaps) * @param adminDn Admin DN * @param adminPassword Admin password * @param baseDn Base DN @@ -804,6 +807,7 @@ public class AppResource extends BaseResource { public Response configLdap(@FormParam("enabled") Boolean enabled, @FormParam("host") String host, @FormParam("port") String portStr, + @FormParam("usessl") Boolean usessl, @FormParam("admin_dn") String adminDn, @FormParam("admin_password") String adminPassword, @FormParam("base_dn") String baseDn, @@ -833,6 +837,7 @@ public class AppResource extends BaseResource { configDao.update(ConfigType.LDAP_ENABLED, Boolean.TRUE.toString()); configDao.update(ConfigType.LDAP_HOST, host); configDao.update(ConfigType.LDAP_PORT, portStr); + configDao.update(ConfigType.LDAP_USESSL, usessl.toString()); configDao.update(ConfigType.LDAP_ADMIN_DN, adminDn); configDao.update(ConfigType.LDAP_ADMIN_PASSWORD, adminPassword); configDao.update(ConfigType.LDAP_BASE_DN, baseDn); diff --git a/docs-web/src/main/webapp/src/locale/de.json b/docs-web/src/main/webapp/src/locale/de.json index cb981709..c2dd0e35 100644 --- a/docs-web/src/main/webapp/src/locale/de.json +++ b/docs-web/src/main/webapp/src/locale/de.json @@ -278,8 +278,23 @@ "menu_vocabularies": "Vokabulareinträge", "menu_configuration": "Einstellungen", "menu_inbox": "Posteingang durchsuchen", + "menu_ldap": "LDAP Authentifizierung", "menu_metadata": "Benutzerdefinierte Metadaten", "menu_monitoring": "Überwachung", + "ldap": { + "title": "LDAP Authentifizierung", + "enabled": "LDAP Authentifizierung aktivieren", + "host": "LDAP Hostname", + "port": "LDAP Port (standardmäßig 389)", + "usessl": "Aktiviere SSL (ldaps)", + "admin_dn": "Admin DN", + "admin_password": "Admin Passwort", + "base_dn": "Basis-Such-DN", + "filter": "Suchfilter (muss USERNAME enthalten, zum Beispiel \"(uid=USERNAME)\")", + "default_email": "Standard-E-Mail für LDAP-Benutzer", + "default_storage": "Standard Quota für LDAP-Benutzer", + "saved": "LDAP-Konfiguration erfolgreich gespeichert" + }, "user": { "title": "Benutzerverwaltung", "add_user": "Benutzer hinzufügen", diff --git a/docs-web/src/main/webapp/src/locale/en.json b/docs-web/src/main/webapp/src/locale/en.json index 32495206..cf05bcb4 100644 --- a/docs-web/src/main/webapp/src/locale/en.json +++ b/docs-web/src/main/webapp/src/locale/en.json @@ -286,6 +286,7 @@ "enabled": "Enable LDAP authentication", "host": "LDAP hostname", "port": "LDAP port (389 by default)", + "usessl": "Enable SSL (ldaps)", "admin_dn": "Admin DN", "admin_password": "Admin password", "base_dn": "Base search DN", diff --git a/docs-web/src/main/webapp/src/partial/docs/settings.ldap.html b/docs-web/src/main/webapp/src/partial/docs/settings.ldap.html index 80657de3..03575135 100644 --- a/docs-web/src/main/webapp/src/partial/docs/settings.ldap.html +++ b/docs-web/src/main/webapp/src/partial/docs/settings.ldap.html @@ -21,6 +21,13 @@ +
+ +
+ +
+
+
@@ -85,4 +92,4 @@
{{ saveResult }} -
\ No newline at end of file +