/
NikolayIvkin
/
tutorials1
Обзор
Документация
Войти
/
NikolayIvkin
/
tutorials1
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
spring-boot-modules/spring-boot-security/src/main/java/com/baeldung/integrationtesting/WebSecurityConfigurer.java
42 строки
2 KB
Harry9656
JAVA-31190: Preparation for migrating spring-boot-modules to version 3. (#15834)
27 фев 2024, 04:49
Не верифицирован
27 фев 2024, 04:49
aefd833
Код
Авторство
О чём код?
package com.baeldung.integrationtesting; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.Customizer; import org.springframework.security.config.annotation.web.builders.HttpSecurity; import org.springframework.security.core.userdetails.User; import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder; import org.springframework.security.crypto.password.PasswordEncoder; import org.springframework.security.provisioning.InMemoryUserDetailsManager; import org.springframework.security.web.SecurityFilterChain; import org.springframework.security.web.util.matcher.AntPathRequestMatcher; @Configuration public class WebSecurityConfigurer { @Bean public InMemoryUserDetailsManager userDetailsService(PasswordEncoder passwordEncoder) { UserDetails user = User.withUsername("spring") .password(passwordEncoder.encode("secret")) .roles("USER") .build(); return new InMemoryUserDetailsManager(user); } @Bean public SecurityFilterChain filterChain(HttpSecurity http) throws Exception { return http.authorizeHttpRequests(request -> request.requestMatchers(new AntPathRequestMatcher("/private/**")) .hasRole("USER")) .authorizeHttpRequests(request -> request.requestMatchers(new AntPathRequestMatcher("/public/**")) .permitAll()) .httpBasic(Customizer.withDefaults()) .build(); } @Bean public BCryptPasswordEncoder passwordEncoder() { return new BCryptPasswordEncoder(); } }