|
30 | 30 | import javax.inject.Inject; |
31 | 31 | import javax.servlet.ServletException; |
32 | 32 |
|
33 | | -import org.keycloak.OAuth2Constants; |
34 | 33 | import org.keycloak.adapters.AdapterDeploymentContext; |
35 | 34 | import org.keycloak.adapters.KeycloakConfigResolver; |
36 | 35 | import org.keycloak.adapters.KeycloakDeployment; |
|
44 | 43 | import org.keycloak.adapters.springsecurity.authentication.KeycloakLogoutHandler; |
45 | 44 | import org.keycloak.adapters.springsecurity.filter.KeycloakAuthenticationProcessingFilter; |
46 | 45 | import org.keycloak.adapters.springsecurity.filter.KeycloakPreAuthActionsFilter; |
47 | | -import org.keycloak.adapters.springsecurity.filter.QueryParamPresenceRequestMatcher; |
48 | 46 | import org.keycloak.adapters.springsecurity.management.HttpSessionManager; |
49 | 47 | import org.keycloak.adapters.springsecurity.token.KeycloakAuthenticationToken; |
50 | 48 | import org.keycloak.representations.IDToken; |
51 | 49 | import org.keycloak.representations.adapters.config.AdapterConfig; |
52 | 50 | import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; |
53 | 51 | import org.springframework.context.ApplicationContext; |
54 | 52 | import org.springframework.context.annotation.Bean; |
| 53 | +import org.springframework.context.annotation.Import; |
55 | 54 | import org.springframework.core.env.Environment; |
56 | 55 | import org.springframework.security.authentication.AuthenticationManager; |
57 | 56 | import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; |
58 | 57 | import org.springframework.security.config.annotation.web.builders.HttpSecurity; |
| 58 | +import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter; |
59 | 59 | import org.springframework.security.config.annotation.web.configurers.ExpressionUrlAuthorizationConfigurer.AuthorizedUrl; |
60 | 60 | import org.springframework.security.core.Authentication; |
61 | 61 | import org.springframework.security.core.AuthenticationException; |
@@ -83,7 +83,7 @@ public class KeycloakAuthenticationBackend implements IAuthenticationBackend { |
83 | 83 | Environment environment; |
84 | 84 |
|
85 | 85 | @Inject |
86 | | - AuthenticationManager authenticationManager; |
| 86 | + WebSecurityConfigurerAdapter webSecurityConfigurerAdapter; |
87 | 87 |
|
88 | 88 | @Inject |
89 | 89 | ApplicationContext ctx; |
@@ -135,7 +135,7 @@ protected KeycloakAuthenticationProcessingFilter keycloakAuthenticationProcessin |
135 | 135 | new RequestHeaderRequestMatcher(KeycloakAuthenticationProcessingFilter.AUTHORIZATION_HEADER) |
136 | 136 | ); |
137 | 137 |
|
138 | | - KeycloakAuthenticationProcessingFilter filter = new KeycloakAuthenticationProcessingFilter(authenticationManager, requestMatcher); |
| 138 | + KeycloakAuthenticationProcessingFilter filter = new KeycloakAuthenticationProcessingFilter(webSecurityConfigurerAdapter.authenticationManagerBean(), requestMatcher); |
139 | 139 | filter.setSessionAuthenticationStrategy(sessionAuthenticationStrategy()); |
140 | 140 | // Fix: call afterPropertiesSet manually, because Spring doesn't invoke it for some reason. |
141 | 141 | filter.setApplicationContext(ctx); |
|
0 commit comments