From a646f85fe82c712ccb54e3686354a5b0f3d0ce85 Mon Sep 17 00:00:00 2001 From: William Enright <william.enright@savoirfairelinux.com> Date: Thu, 25 Jun 2020 17:46:13 -0400 Subject: [PATCH] AJAX calls now use Authorization: Bearer in headers Change-Id: I67e7147bf89a1432347e5e0b79937f8befdfea19 --- .../net/jami/jams/server/servlets/LoginServlet.java | 2 +- .../jams/server/servlets/filters/InstallFilter.java | 2 +- jams-server/src/main/resources/webapp/js/api.js | 13 +++++++------ 3 files changed, 9 insertions(+), 8 deletions(-) diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/LoginServlet.java b/jams-server/src/main/java/net/jami/jams/server/servlets/LoginServlet.java index b006def1..13208746 100644 --- a/jams-server/src/main/java/net/jami/jams/server/servlets/LoginServlet.java +++ b/jams-server/src/main/java/net/jami/jams/server/servlets/LoginServlet.java @@ -61,7 +61,7 @@ public class LoginServlet extends HttpServlet { if(req.getHeader("authorization") != null){ res = processUsernamePasswordAuth(req.getHeader("authorization")); } - //Case 3 SSL Certificate + //Case 2 SSL Certificate else if(req.getAttribute("jakarta.servlet.request.X509Certificate") != null){ res = processX509Auth((X509Certificate[])req.getAttribute("jakarta.servlet.request.X509Certificate")); } diff --git a/jams-server/src/main/java/net/jami/jams/server/servlets/filters/InstallFilter.java b/jams-server/src/main/java/net/jami/jams/server/servlets/filters/InstallFilter.java index d49aa4c4..b6213ab2 100644 --- a/jams-server/src/main/java/net/jami/jams/server/servlets/filters/InstallFilter.java +++ b/jams-server/src/main/java/net/jami/jams/server/servlets/filters/InstallFilter.java @@ -58,7 +58,7 @@ public class InstallFilter implements Filter { boolean isLogin = false; if(request.getServletPath().contains("start")) isLogin = true; SignedJWT signedJWT = null; - if(request.getHeader("authorization").contains("bearer") || request.getHeader("authorization").contains("Bearer")){ + if(request.getHeader("authorization") != null && (request.getHeader("authorization").contains("bearer") || request.getHeader("authorization").contains("Bearer"))){ try { JWSVerifier jwsVerifier = new RSASSAVerifier(userAuthenticationModule.getAuthModulePubKey()); signedJWT = SignedJWT.parse(request.getHeader("authorization").replace("bearer","").replace("Bearer","")); diff --git a/jams-server/src/main/resources/webapp/js/api.js b/jams-server/src/main/resources/webapp/js/api.js index e74f6df4..13ff2cd7 100644 --- a/jams-server/src/main/resources/webapp/js/api.js +++ b/jams-server/src/main/resources/webapp/js/api.js @@ -79,7 +79,7 @@ function ajaxApiCall(api_path, request_type, data, credentials, callBackFunction var jwt = localStorage.getItem('access_token'); ajax['headers'] = { - "Bearer": jwt, + "Authorization": "Bearer " + jwt, } } @@ -100,14 +100,15 @@ function ajaxApiCall(api_path, request_type, data, credentials, callBackFunction var jwt = localStorage.getItem('access_token'); ajax['headers'] = { - "Bearer": jwt, + "Authorization": "Bearer " + jwt, } - } + } else { + ajax['headers'] = { + "Content-type":"application/json" - ajax['headers'] = { - "Content-type":"application/json", - "Bearer": jwt + } } + ajax['data'] = JSON.stringify(data); } } -- GitLab