146 log.fine(
"Keycloak OIDC Filter");
147 HttpServletRequest request = (HttpServletRequest) req;
148 HttpServletResponse response = (HttpServletResponse) res;
151 chain.doFilter(req, res);
155 OIDCServletHttpFacade facade =
new OIDCServletHttpFacade(request, response);
157 if (deployment == null || !deployment.isConfigured()) {
158 response.sendError(403);
159 log.fine(
"deployment not configured");
163 PreAuthActionsHandler preActions =
new PreAuthActionsHandler(
new UserSessionManagement() {
165 public void logoutAll() {
172 public void logoutHttpSessions(List<String> ids) {
173 log.fine(
"**************** logoutHttpSessions");
175 for (String
id : ids) {
176 log.finest(
"removed idMapper: " +
id);
183 if (preActions.handleRequest()) {
190 OIDCFilterSessionStore tokenStore =
new OIDCFilterSessionStore(request, facade, 100000, deployment,
idMapper);
191 tokenStore.checkCurrentToken();
194 FilterRequestAuthenticator authenticator =
new FilterRequestAuthenticator(deployment, tokenStore, facade, request, 8443);
195 AuthOutcome outcome = authenticator.authenticate();
196 if (outcome == AuthOutcome.AUTHENTICATED) {
197 log.fine(
"AUTHENTICATED");
198 if (facade.isEnded()) {
201 AuthenticatedActionsHandler actions =
new AuthenticatedActionsHandler(deployment, facade);
202 if (actions.handledRequest()) {
205 HttpServletRequestWrapper wrapper = tokenStore.buildWrapper();
206 chain.doFilter(wrapper, res);
210 AuthChallenge challenge = authenticator.getChallenge();
211 if (challenge != null) {
212 log.fine(
"challenge");
213 challenge.challenge(facade);
216 response.sendError(403);
KeycloakDeployment resolveDeployment(HttpFacade facade)
Definition: AdapterDeploymentContext.java:86
NodesRegistrationManagement nodesRegistrationManagement
Definition: KeycloakOIDCFilter.java:71
SessionIdMapper idMapper
Definition: KeycloakOIDCFilter.java:69
static final Logger log
Definition: KeycloakOIDCFilter.java:57
AdapterDeploymentContext deploymentContext
Definition: KeycloakOIDCFilter.java:67
boolean shouldSkip(HttpServletRequest request)
Definition: KeycloakOIDCFilter.java:230
void tryRegister(final KeycloakDeployment resolvedDeployment)
Definition: NodesRegistrationManagement.java:42