[Error/해결] Spring boot requestMatchers().hasRole() 401 Unauthorized

OOING·2023년 10월 8일
0

Trouble Shooting

목록 보기
4/11

오류

WebSecurityConfig 에서 (1) requestMatchers("/promotion/add").hasRold("ADMIN") 으로 권한을 설정했음에도, ADMIN 권한을 가지고 있는 계정에서 접근 시 401 에러가 발생했다.

401 Unauthorized
요청된 리소스에 대한 유효한 인증 자격 증명이 없기 때문에 클라이언트 요청이 완료되지 않았음을 나타냅니다.
즉, 해당 리소스에 대한 권한이 없다는 말이다.

아래 주석처리를 해둔 requestMatchers("/recruitment/**", "/map/**").hasRold("MEMBER") 은 정상 작동했는데, (1)은 작성해도 /promotion/add(POST) 페이지에서 작동하지 않고 401 에러가 발생했다. 또한 (1) 코드를 작성하니 잘 작동하던 /recruitment, /map 에서도 401 발생.

해결 방법

requestMatchers("/", "/**").permitAll() 추가

permitAll() 의 앞에 붙어있는 requestMatchers() 의 경로에 /** 을 추가.
즉, 모든 루트 경로에 대한 접근 권한을 허용하는 것이다.

profile
HICE 19

0개의 댓글