From fecde4641c13b791c14b0475370956c80e8fb2eb Mon Sep 17 00:00:00 2001 From: Rinjae Date: Tue, 20 Jan 2026 18:30:18 +0900 Subject: [PATCH] Add HTTP session logging for authentication events --- .../PortalAuthenticationFailureHandler.java | 19 ++++++++++++++++++- .../PortalAuthenticationSuccessHandler.java | 19 ++++++++++++++++++- .../config/PortalLogoutSuccessHandler.java | 18 +++++++++++++++++- 3 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationFailureHandler.java b/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationFailureHandler.java index db2d66f..acf4c30 100644 --- a/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationFailureHandler.java +++ b/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationFailureHandler.java @@ -118,8 +118,25 @@ public class PortalAuthenticationFailureHandler implements AuthenticationFailure logMessage.append("Is Proxied: ").append(HttpRequestUtil.isProxied(request)).append("\n"); logMessage.append("Remote Address (Direct): ").append(request.getRemoteAddr()).append("\n"); logMessage.append("Remote Host (Direct): ").append(request.getRemoteHost()).append("\n"); + logMessage.append("Request Method: ").append(request.getMethod()).append("\n"); logMessage.append("Request URI: ").append(request.getRequestURI()).append("\n"); - logMessage.append("User-Agent: ").append(request.getHeader("User-Agent")).append("\n"); + logMessage.append("Query String: ").append(request.getQueryString()).append("\n"); + + logMessage.append("\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + logMessage.append("REQUEST HEADERS\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + + java.util.Enumeration headerNames = request.getHeaderNames(); + while (headerNames.hasMoreElements()) { + String headerName = headerNames.nextElement(); + java.util.Enumeration headerValues = request.getHeaders(headerName); + while (headerValues.hasMoreElements()) { + String headerValue = headerValues.nextElement(); + logMessage.append(String.format(" %-30s : %s\n", headerName, headerValue)); + } + } + logMessage.append(StringRepeatUtil.repeat('=', 80)).append("\n"); sessionLogger.warn(logMessage.toString()); diff --git a/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationSuccessHandler.java b/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationSuccessHandler.java index 15c939d..2935022 100644 --- a/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationSuccessHandler.java +++ b/src/main/java/com/eactive/apim/portal/config/PortalAuthenticationSuccessHandler.java @@ -141,8 +141,25 @@ public class PortalAuthenticationSuccessHandler implements AuthenticationSuccess logMessage.append("Is Proxied: ").append(HttpRequestUtil.isProxied(request)).append("\n"); logMessage.append("Remote Address (Direct): ").append(request.getRemoteAddr()).append("\n"); logMessage.append("Remote Host (Direct): ").append(request.getRemoteHost()).append("\n"); + logMessage.append("Request Method: ").append(request.getMethod()).append("\n"); logMessage.append("Request URI: ").append(request.getRequestURI()).append("\n"); - logMessage.append("User-Agent: ").append(request.getHeader("User-Agent")).append("\n"); + logMessage.append("Query String: ").append(request.getQueryString()).append("\n"); + + logMessage.append("\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + logMessage.append("REQUEST HEADERS\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + + java.util.Enumeration headerNames = request.getHeaderNames(); + while (headerNames.hasMoreElements()) { + String headerName = headerNames.nextElement(); + java.util.Enumeration headerValues = request.getHeaders(headerName); + while (headerValues.hasMoreElements()) { + String headerValue = headerValues.nextElement(); + logMessage.append(String.format(" %-30s : %s\n", headerName, headerValue)); + } + } + logMessage.append(StringRepeatUtil.repeat('=', 80)).append("\n"); sessionLogger.info(logMessage.toString()); diff --git a/src/main/java/com/eactive/apim/portal/config/PortalLogoutSuccessHandler.java b/src/main/java/com/eactive/apim/portal/config/PortalLogoutSuccessHandler.java index 6e955db..27214a3 100644 --- a/src/main/java/com/eactive/apim/portal/config/PortalLogoutSuccessHandler.java +++ b/src/main/java/com/eactive/apim/portal/config/PortalLogoutSuccessHandler.java @@ -54,8 +54,24 @@ public class PortalLogoutSuccessHandler implements LogoutSuccessHandler { logMessage.append("Is Proxied: ").append(HttpRequestUtil.isProxied(request)).append("\n"); logMessage.append("Remote Address (Direct): ").append(request.getRemoteAddr()).append("\n"); logMessage.append("Remote Host (Direct): ").append(request.getRemoteHost()).append("\n"); + logMessage.append("Request Method: ").append(request.getMethod()).append("\n"); logMessage.append("Request URI: ").append(request.getRequestURI()).append("\n"); - logMessage.append("User-Agent: ").append(request.getHeader("User-Agent")).append("\n"); + logMessage.append("Query String: ").append(request.getQueryString()).append("\n"); + + logMessage.append("\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + logMessage.append("REQUEST HEADERS\n"); + logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n"); + + java.util.Enumeration headerNames = request.getHeaderNames(); + while (headerNames.hasMoreElements()) { + String headerName = headerNames.nextElement(); + java.util.Enumeration headerValues = request.getHeaders(headerName); + while (headerValues.hasMoreElements()) { + String headerValue = headerValues.nextElement(); + logMessage.append(String.format(" %-30s : %s\n", headerName, headerValue)); + } + } logMessage.append("\n"); logMessage.append(StringRepeatUtil.repeat('-', 80)).append("\n");