해당 글은 groomedu의 스프링부트 나만의 블로그 만들기 강의를 보고 개인적으로 정리한 글입니다.
XSS : 자바스크립로 공격하는 것.
CSRF : 공격자가 희생자의 권한을 도용하여 특정 웹사이트의 기능을 실행하는 것.
SecurityConfig
@Bean
public SecurityFilterChain configure(HttpSecurity http) throws Exception {
http
.csrf().disable() // csrf 토큰 비활성화
.authorizeRequests()
.requestMatchers("/**", "/auth/**", "/js/**", "/css/**", "/image/**")
.permitAll()
.anyRequest()
.authenticated()
.and()
.formLogin()
.loginPage("/auth/loginForm");
return http.build();
}
SecurityConfig에 .csrf().disable()을 추가한 이유
- 회원가입 시 전송 방식을 form 태그를 통해 POST 전송을 하는게 아니라 ajax를 사용하여 자바스크립트로 POST 전송한다.
자바스크립트 요청이 들어올 때 스프링 시큐리티에서 csrf 토큰이 있는지 체크하는데 토큰이 없기에 막힌다.
그래서 .csrf().disable()을 통해 csrf 토큰 체크를 비활성화 시킨 것이다.
'Spring > SpringBoot' 카테고리의 다른 글
| [goormedu 강의] 스프링부트 블로그 만들기 06 - 05 스프링 시큐리티 로그인 (0) | 2024.10.05 |
|---|---|
| [goormedu 강의] 스프링부트 블로그 만들기 06 - 03 비밀번호 해쉬 후 회원가입하기 (0) | 2024.10.05 |
| [goormedu 강의] 스프링부트 블로그 만들기 06 - 02 스프링 시큐리티 로그인 페이지 커스터마이징 (0) | 2024.09.25 |
| [goormedu 강의] 스프링부트 블로그 만들기 06 - 01 스프링 시큐리티 체험해보기 (0) | 2024.09.25 |
| [goormedu 강의] 스프링부트 블로그 만들기 05 - 12 전통적인 방식의 로그인 방법 (1) | 2024.08.30 |