@Override protected AdapterTokenStore getTokenStore(HttpServerExchange exchange, HttpFacade facade, KeycloakDeployment deployment, SecurityContext securityContext) { if (deployment.getTokenStore() == TokenStore.SESSION) { return new ServletSessionTokenStore(exchange, deployment, sessionManagement, securityContext); } else { return new UndertowCookieTokenStore(facade, deployment, securityContext); } }
@Override public boolean restoreRequest() { HttpSession session = getSession(false); if (session == null) return false; SavedRequest.tryRestoreRequest(exchange, session); return false; }
@Override public boolean isCached(RequestAuthenticator authenticator) { HttpSession session = getSession(false); if (session == null) { log.debug("session was null, returning null"); securityContext.authenticationComplete(account, "KEYCLOAK", false); ((AbstractUndertowRequestAuthenticator)authenticator).propagateKeycloakContext(account); restoreRequest(); return true; } else {
@Override public boolean isCached(RequestAuthenticator authenticator) { HttpSession session = getSession(false); if (session == null) { log.debug("session was null, returning null"); securityContext.authenticationComplete(account, "KEYCLOAK", false); ((AbstractUndertowRequestAuthenticator)authenticator).propagateKeycloakContext(account); restoreRequest(); return true; } else {
@Override protected AdapterTokenStore getTokenStore(HttpServerExchange exchange, HttpFacade facade, KeycloakDeployment deployment, SecurityContext securityContext) { if (deployment.getTokenStore() == TokenStore.SESSION) { return new ServletSessionTokenStore(exchange, deployment, sessionManagement, securityContext); } else { return new UndertowCookieTokenStore(facade, deployment, securityContext); } }
@Override public boolean restoreRequest() { HttpSession session = getSession(false); if (session == null) return false; SavedRequest.tryRestoreRequest(exchange, session); return false; }
@Override public void saveAccountInfo(OidcKeycloakAccount account) { final ServletRequestContext servletRequestContext = exchange.getAttachment(ServletRequestContext.ATTACHMENT_KEY); HttpSession session = getSession(true); session.setAttribute(KeycloakUndertowAccount.class.getName(), account); session.setAttribute(KeycloakSecurityContext.class.getName(), account.getKeycloakSecurityContext()); sessionManagement.login(servletRequestContext.getDeployment().getSessionManager()); }
@Override public void saveAccountInfo(OidcKeycloakAccount account) { final ServletRequestContext servletRequestContext = exchange.getAttachment(ServletRequestContext.ATTACHMENT_KEY); HttpSession session = getSession(true); session.setAttribute(KeycloakUndertowAccount.class.getName(), account); session.setAttribute(KeycloakSecurityContext.class.getName(), account.getKeycloakSecurityContext()); sessionManagement.login(servletRequestContext.getDeployment().getSessionManager()); }