WebSecurityConfigurerAdapter deprecated 해결
737
작성한 질문수 8
@Bean
public UserDetailsService userDetailsManager(BCryptPasswordEncoder bCryptPasswordEncoder){
InMemoryUserDetailsManager manager = new InMemoryUserDetailsManager();
manager.createUser(User.withUsername("user")
.password(bCryptPasswordEncoder.encode("userPass"))
.roles("user")
.build());
manager.createUser(User.withUsername("admin")
.password(bCryptPasswordEncoder.encode("adminPass"))
.roles("user", "admin")
.build());
return manager;
}
@Bean
public BCryptPasswordEncoder encodePassword(){
return new BCryptPasswordEncoder();
}
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
WebSecurityConfigurerAdapter가 deprecation 되어 대체 방안이 제공되고 있습니다.
해당 코드를 업데이트하려면 WebSecurityConfigurerAdapter를 상속받는 대신 WebSecurityConfigurer를 구현하고, @EnableWebSecurity를 사용해야 합니다.
아래는 예시 코드입니다.
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurer {
@Autowired
private UserDetailsService userDetailsService;
@Bean
public PasswordEncoder passwordEncoder() {
return new BCryptPasswordEncoder();
}
@Override
protected void configure(HttpSecurity http) throws Exception {
http.authorizeRequests()
.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/user/**").hasRole("USER")
.anyRequest().authenticated()
.and()
.formLogin().loginPage("/login").permitAll()
.and()
.logout().logoutSuccessUrl("/login?logout").permitAll();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth.userDetailsService(userDetailsService).passwordEncoder(passwordEncoder());
}
}
위의 코드는 인증 및 권한 부여에 대한 예시입니다. 원하는 대로 수정하셔서 사용하시면 됩니다.
감사합니다.
JPA
0
63
1
jpa dependency를 추가하고 SecurityConfig클래스에서 오류가 납니다.
0
72
1
웹 브라우저 400 bad request
0
73
1
@Size는 되는데 @Past는 안 됩니다.
0
65
1
pdf 자료는 없나요?
0
76
2
locale 정보가 null 이면 무조건 messages_ko.properties이 호출 되는 문제
0
91
2
Swagger 강의, Unable to infer base url 이거 뜨시는 분들 도움되시라고
0
122
1
강의에서나온 화면 피피티
0
161
1
HelloWorldBean 관련 에러
0
189
2
Swagger API 3.x 오류..
0
223
1
java: variable message not initialized in the default constructor 에러는 어찌하면 좋을까요?
1
283
1
현재 GIT에 올리신 소스를 실행해봤습니다.
0
191
2
고양이 소리가 귀엽네요 !!
0
140
2
git에서 소스받고 실습중인데
0
120
1
post가 안되요
0
107
1
한국어 같은 경우 언어코드인 messages_ko.properties 로 생성하는게 더 좋지 않나요?
0
169
2
리턴타입으로서 EntityModel<User> 와 ResponseEntity질문
0
107
1
예외처리쪽 관련 질문있습니다.
0
161
2
엔티티가 바로 응답으로 나가도 되나요??
0
230
2
안녕하세여 Cannot invoke "co.kr.joneconsulting.resfulservice.repository.PostRepository.save(Object)" because "this.postRepository" is null
0
142
2
사용자 등록하고 나서 H2 에서 보면 신규 사용자의 password, ssn 이 null 로 되어 있습니다.
0
144
2
ApplictionContext 질문
0
196
2
롬북이 안먹히는것같아요
0
159
1
인텔리제이에서스프링부트 파일 실행하면
0
242
1





