|
@@ -18,7 +18,6 @@ package example;
|
|
|
|
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Bean;
|
|
import org.springframework.context.annotation.Configuration;
|
|
import org.springframework.context.annotation.Configuration;
|
|
-import org.springframework.context.annotation.Scope;
|
|
|
|
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
|
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
|
|
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
|
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
|
|
import org.springframework.security.core.userdetails.User;
|
|
import org.springframework.security.core.userdetails.User;
|
|
@@ -26,19 +25,19 @@ import org.springframework.security.core.userdetails.UserDetails;
|
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
|
import org.springframework.security.core.userdetails.UserDetailsService;
|
|
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
|
|
import org.springframework.security.provisioning.InMemoryUserDetailsManager;
|
|
import org.springframework.security.web.SecurityFilterChain;
|
|
import org.springframework.security.web.SecurityFilterChain;
|
|
-import org.springframework.security.web.servlet.util.matcher.MvcRequestMatcher;
|
|
|
|
-import org.springframework.web.servlet.handler.HandlerMappingIntrospector;
|
|
|
|
|
|
+import org.springframework.security.web.servlet.util.matcher.PathPatternRequestMatcher;
|
|
|
|
|
|
@Configuration
|
|
@Configuration
|
|
@EnableWebSecurity
|
|
@EnableWebSecurity
|
|
public class SecurityConfiguration {
|
|
public class SecurityConfiguration {
|
|
|
|
|
|
@Bean
|
|
@Bean
|
|
- public SecurityFilterChain securityFilterChain(HttpSecurity http, MvcRequestMatcher.Builder mvc) throws Exception {
|
|
|
|
|
|
+ public SecurityFilterChain securityFilterChain(HttpSecurity http, PathPatternRequestMatcher.Builder mvc)
|
|
|
|
+ throws Exception {
|
|
// @formatter:off
|
|
// @formatter:off
|
|
http
|
|
http
|
|
.authorizeHttpRequests((authorize) -> authorize
|
|
.authorizeHttpRequests((authorize) -> authorize
|
|
- .requestMatchers(mvc.pattern("/login"), mvc.pattern("/resources/**")).permitAll()
|
|
|
|
|
|
+ .requestMatchers(mvc.matcher("/login"), mvc.matcher("/resources/**")).permitAll()
|
|
.anyRequest().authenticated()
|
|
.anyRequest().authenticated()
|
|
)
|
|
)
|
|
.jee((jee) -> jee.mappableRoles("USER", "ADMIN"));
|
|
.jee((jee) -> jee.mappableRoles("USER", "ADMIN"));
|
|
@@ -46,12 +45,6 @@ public class SecurityConfiguration {
|
|
return http.build();
|
|
return http.build();
|
|
}
|
|
}
|
|
|
|
|
|
- @Scope("prototype")
|
|
|
|
- @Bean
|
|
|
|
- MvcRequestMatcher.Builder mvc(HandlerMappingIntrospector introspector) {
|
|
|
|
- return new MvcRequestMatcher.Builder(introspector);
|
|
|
|
- }
|
|
|
|
-
|
|
|
|
// @formatter:off
|
|
// @formatter:off
|
|
@Bean
|
|
@Bean
|
|
public UserDetailsService userDetailsService() {
|
|
public UserDetailsService userDetailsService() {
|