간단한 메모리 인증

jb kim·2022년 3월 6일
0

REST API 블로그 앱

목록 보기
43/65

userDetailsService 메소드에 메모리인증용 유저와 관리자 생성

@Configuration
@EnableWebSecurity
@EnableGlobalMethodSecurity(prePostEnabled = true)
public class SecurityConfig extends WebSecurityConfigurerAdapter{

	@Bean
	PasswordEncoder passwordEncoder() {
		return new BCryptPasswordEncoder();
	}
	
	@Override
	protected void configure(HttpSecurity http) throws Exception {
		
		http
			.csrf().disable()
			.authorizeRequests()
			.antMatchers(HttpMethod.GET, "/api/**").permitAll()
			.anyRequest()
			.authenticated()
			.and()
			.httpBasic(); //베이직 인증창
	}
	
	@Override
	@Bean
	protected UserDetailsService userDetailsService() {

		UserDetails user = User.builder().username("user").password(passwordEncoder().encode("pass")).roles("USER").build();
		UserDetails kim = User.builder().username("drv98").password(passwordEncoder().encode("1234")).roles("ADMIN").build();
		return new InMemoryUserDetailsManager(user, kim);
	}
}

관리자만 가능

포스트 생성, 업데이트 ,삭제 추가

	@PreAuthorize("hasRole('ADMIN')")

포스트를 생성 해보자

ADMIN 계정으로 정보 수정후 생성

profile
픽서

0개의 댓글