From 45b5c4dbd87516fb9d9c47ec3e8de39ad5f7a02b Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Tom=20K=C3=A4sler?= <tom.kaesler@mni.thm.de>
Date: Mon, 20 May 2019 22:45:03 +0200
Subject: [PATCH] Add tracing messages to ws auth handling for better debugging

---
 .../websocket/handler/AuthChannelInterceptorAdapter.java     | 5 +++++
 1 file changed, 5 insertions(+)

diff --git a/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java b/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java
index a9098c962..5c1614489 100644
--- a/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java
+++ b/src/main/java/de/thm/arsnova/websocket/handler/AuthChannelInterceptorAdapter.java
@@ -31,13 +31,16 @@ public class AuthChannelInterceptorAdapter implements ChannelInterceptor {
 	@Nullable
 	@Override
 	public Message<?> preSend(final Message<?> message, final MessageChannel channel) {
+		logger.trace("Inspecting incoming message: {}", message);
 		final StompHeaderAccessor accessor = StompHeaderAccessor.wrap(message);
 
 		final String sessionId = accessor.getSessionId();
 		if (accessor.getCommand() != null && accessor.getCommand().equals(StompCommand.CONNECT)) {
 			// user needs to authorize
+			logger.trace("Incoming message is a connect command");
 			final List<String> tokenList = accessor.getNativeHeader("token");
 			if (tokenList != null && tokenList.size() > 0) {
+				logger.trace("Adding token {} to the ws session mapping", tokenList.get(0));
 				final String token = tokenList.get(0);
 				service.addWsSessionToJwtMapping(sessionId, token);
 			} else {
@@ -46,9 +49,11 @@ public class AuthChannelInterceptorAdapter implements ChannelInterceptor {
 				return null;
 			}
 		} else {
+			logger.trace("Incoming message is anything but a connect command");
 			final List<String> userIdList = accessor.getNativeHeader("ars-user-id");
 			if (userIdList != null && userIdList.size() > 0) {
 				// user-id is given, check for auth
+				logger.trace("Checking user id with ws session mapping");
 				final String userId = userIdList.get(0);
 				final User u = service.getAuthenticatedUserByWsSession(sessionId);
 				if (u == null || !userId.equals(u.getId())) {
-- 
GitLab