에러해결 & 최적화/Spring
[해결]접근가능한 url 권한 설정이 안되는 문제(SpringSecurity)
Chung-A
2021. 11. 2. 21:58
Spring Security에서 권한별로 접근할 수 있는 url 을 다르게 주고 싶었다
(최고관리자를 ADMIN, 중간관리자를 SUB_ADMIN 이라고 하자)
처음에 아래와 같이 적고 테스트를 해보았다.
http.authorizeRequests()
....
.antMatchers("/admin/**").hasRole("ADMIN")
.antMatchers("/admin/sub/**").hasRole("SUB_ADMIN")
그런데 위와같이 적으니까 ADMIN은 되는데 SUB_ADMIN 은 계속 404 뜨고있었다.
이것저것 해보다가 아래와 같이 서로 순서를 바꿔서 해보았다.
http.authorizeRequests()
...
.antMatchers("/admin/sub/**").hasRole("SUB_ADMIN")
.antMatchers("/admin/**").hasRole("ADMIN")
그런데 이렇게 하니까 된다.....ㅋㅋㅋㅋ
아무래도 url을 매핑할 때 하위 경로→넓은 경로 순으로 권한이 넓은 것을 제일 마지막에 적어야 하는 것 같다.
오늘도 자잘한 팁 하나 알게되었던 것 같다ㅎㅎ