diff --git a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java index 1ea10af3c175075733efd58815a033a7fac426f8..5bb5a067e5c095b1705c2e2ca928122c5f38b812 100644 --- a/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java +++ b/authentication-module/src/main/java/net/jami/jams/authmodule/UserAuthenticationModule.java @@ -202,7 +202,7 @@ public class UserAuthenticationModule implements AuthenticationModule { return source.test(); } catch (Exception e){ - log.error("The testing of the source was unsuccessful!"); + log.error("The testing of the source was unsuccessful: " + e.toString()); return false; } } diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/api/install/CreateAuthSourceServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/api/install/CreateAuthSourceServlet.java index 0de31e2f485451488858f4d3cde1b1c07c72d4cb..d063766068bd6da27ac02c0fcf5f0b195167e91a 100644 --- a/jams-server/src/main/java/net/jami/jams/server/servlets/api/install/CreateAuthSourceServlet.java +++ b/jams-server/src/main/java/net/jami/jams/server/servlets/api/install/CreateAuthSourceServlet.java @@ -29,6 +29,7 @@ import jakarta.servlet.annotation.WebServlet; import jakarta.servlet.http.HttpServlet; import jakarta.servlet.http.HttpServletRequest; import jakarta.servlet.http.HttpServletResponse; +import lombok.extern.slf4j.Slf4j; import net.jami.jams.common.authentication.AuthenticationSourceType; import net.jami.jams.common.objects.requests.CreateAuthSourceRequest; @@ -37,6 +38,7 @@ import java.io.IOException; import static net.jami.jams.server.Server.userAuthenticationModule; @WebServlet("/api/install/auth") +@Slf4j public class CreateAuthSourceServlet extends HttpServlet { @Override diff --git a/jams-server/src/main/resources/webapp/js/api.js b/jams-server/src/main/resources/webapp/js/api.js index c8b55525ee6861ac4be3d482731d49729c2ebc7e..878387dcdee5d2dc50d35f25e7a0513871717621 100644 --- a/jams-server/src/main/resources/webapp/js/api.js +++ b/jams-server/src/main/resources/webapp/js/api.js @@ -39,7 +39,7 @@ var server_parameters_page = 'server-parameters.html'; var api_path_post_install_admin = '/api/install/start'; var api_path_post_auth_login = '/api/auth/login'; var api_path_post_install_ca = '/api/install/ca'; -var api_path_post_install_auth = '/api/jumpstart/setupAuth'; +var api_path_post_install_auth = '/api/install/auth'; var api_path_post_install_server = '/api/jumpstart/setupServer'; var api_path_get_install_lastKnownStep = '/api/install/lastStep'; var api_path_get_auth_users = '/api/auth/users'; diff --git a/jams-server/src/main/resources/webapp/js/identity-management.js b/jams-server/src/main/resources/webapp/js/identity-management.js index ad02ef67c352ca3176c67f0b9e409c8912c72d85..b700e0196d0bbffd7cd12ae933021805a965bc67 100644 --- a/jams-server/src/main/resources/webapp/js/identity-management.js +++ b/jams-server/src/main/resources/webapp/js/identity-management.js @@ -27,11 +27,16 @@ $("#inputIdentityManagmentType").change(function () { // Embedded $("#HSQL-form").submit(function (event) { event.preventDefault(); - var inputs = { + var authSource = {}; + var settings = { "CN": "http://ns.jami.net" }; - var data = inputs; - postParamaters(data); + + authSource['type'] = 'LOCAL'; + authSource['localAuthSettings'] = settings; + var data = authSource; + // post request + postParameters(data); }); // LDAP @@ -47,35 +52,56 @@ $("#AD-form").submit(function (event) { }); function setLDAPParametersData(form) { - var inputs = {} + var authSource = {}; + var settings = {}; $.each(($(form).serializeArray()), function (i, field){ if (field.name == 'useStartTLS') - inputs[field.name] = $.parseJSON(field.value); + settings[field.name] = $.parseJSON(field.value); else - inputs[field.name] = field.value; + settings[field.name] = field.value; }); - var data = inputs; + // settings['usernameField'] = "uid"; + // settings['realm'] = "savoirfairelinux"; + settings['fieldMappings'] = {}; + settings['fieldMappings']['givenName'] = "FirstName"; + settings['fieldMappings']['sn'] = "LastName"; + settings['fieldMappings']['jpegPhoto'] = "ProfilePicture"; + settings['fieldMappings']['mail'] = "Email"; + settings['fieldMappings']['telephoneNumber'] = "PhoneNumber"; + settings['fieldMappings']['mobile'] = "MobileNumber"; + settings['fieldMappings']['facsimileTelephoneNumber'] = "FaxNumber"; + settings['fieldMappings']['extensionName'] = "PhoneNumberExtension"; + settings['fieldMappings']['o'] = "Organization"; + console.log(settings); + + authSource['type'] = 'LDAP'; + authSource['ldapSettings'] = settings; + var data = authSource; // post request - postParamaters(data); + postParameters(data); } function setADParametersData(form) { - var inputs = {} + var authSource = {}; + var settings = {}; $.each(($(form).serializeArray()), function (i, field){ if (field.name == 'port') - inputs[field.name] = parseInt(field.value); + settings[field.name] = parseInt(field.value); else if (field.name == 'isSSL') - inputs[field.name] = $.parseJSON(field.value); + settings[field.name] = $.parseJSON(field.value); else - inputs[field.name] = field.value; + settings[field.name] = field.value; }); - var data = inputs; + + authSource['type'] = 'AD'; + authSource['activeDirectorySettings'] = settings; + var data = authSource; // post request - postParamaters(data); + postParameters(data); } // send post request -function postParamaters(data) { +function postParameters(data) { usePublicNS = $('#publicNS')[0].checked; var callback = set_installation_response("server-parameters.html" + "?usePublicNS=" + usePublicNS); diff --git a/jams-server/src/main/resources/webapp/templates/config.html b/jams-server/src/main/resources/webapp/templates/config.html index 9ac1afc1f22414d9e3f055513b8739300956820b..6057afdd33d2cfb5c3e12ac5b4872e251df9af5d 100644 --- a/jams-server/src/main/resources/webapp/templates/config.html +++ b/jams-server/src/main/resources/webapp/templates/config.html @@ -302,7 +302,7 @@ <div class="form-label-group"> <div class="label-title">Server Address</div> <div class="label-description"></div> - <input type="text" name="serverURI" class="form-control" required autocomplete="off" value=""/> + <input type="text" name="host" class="form-control" required autocomplete="off" value=""/> </div> <div class="form-label-group"> <div class="label-title">Administrator Username <i class="fa fa-info-circle" data-toggle="tooltip" data-placement="right" title="Please use LDAP convention (ex : cn=name, ou=unit, dc=domain)"></i></div> @@ -324,7 +324,7 @@ <div class="label-description"></div> <div class="select_wrapper-picker"> <select name="usernameField" id="usernameField" class="selectpicker" required> - <option value="uid=%s">UID</option> + <option value="uid">UID</option> </select> </div> </div> @@ -353,8 +353,8 @@ <div data-name="useStartTLS"></div> </div> <div class="label-description d-flex"> - <div class="mr-2" data-label="serverURI">Server Address:</div> - <div data-name="serverURI"></div> + <div class="mr-2" data-label="host">Server Address:</div> + <div data-name="host"></div> </div> <div class="label-description d-flex"> <div class="mr-2" data-label="user">Administrator Username:</div> diff --git a/jams-server/src/main/resources/webapp/templates/identity-management.html b/jams-server/src/main/resources/webapp/templates/identity-management.html index 4c01a6d6343f5cf3a9c5d0a5e9c54cf96a9ad7f2..d8a0d70b96f803b3da0f9c21b64d8aac2b6820ee 100644 --- a/jams-server/src/main/resources/webapp/templates/identity-management.html +++ b/jams-server/src/main/resources/webapp/templates/identity-management.html @@ -66,7 +66,7 @@ <select name="backendType" id="inputIdentityManagmentType" class="selectpicker" required> <option value="LDAP-form">LDAP Server</option> <option value="AD-form">Active Directory</option> - <option value="HSQL-form">Local HSQL Database</option> + <option value="HSQL-form">Local Derby Database</option> </select> </div> </div> @@ -85,12 +85,12 @@ <div class="form-label-group"> <div class="label-title">Server Address</div> <div class="label-description"></div> - <input type="text" name="serverURI" class="form-control" required autocomplete="off" value=""/> + <input type="text" name="host" class="form-control" required autocomplete="off" value=""/> </div> <div class="form-label-group"> <div class="label-title">Administrator Username <i class="fa fa-info-circle" data-toggle="tooltip" data-placement="right" title="Please use LDAP convention (ex : cn=name, ou=unit, dc=domain)"></i></div> <div class="label-description"></div> - <input type="text" name="user" class="form-control" required autocomplete="off" value=""/> + <input type="text" name="username" class="form-control" required autocomplete="off" value=""/> </div> <div class="form-label-group"> <div class="label-title">Password</div> @@ -107,7 +107,7 @@ <div class="label-description"></div> <div class="select_wrapper-picker"> <select name="usernameField" id="usernameField" class="selectpicker" required> - <option value="uid=%s">UID</option> + <option value="uid">UID</option> </select> </div> </div>