로그인 시 HTTP Status 500 에러가 발생합니다.
에러의 메시지는 아래와 같습니다.
Secure object invocation /index.html was denied as public invocations are not allowed via this interceptor.
This indicates a configuration error because the rejectPublicInvocations property is set to ‘true’
Question is closed for new answers.
chamomile Selected answer as best 2022년 06월 17일
캐모마일에서는 모든 리소스에 대한 접근제어를 수행하도록 기본적으로 설정되어져 있습니다.
<http pattern="/**" ... />
위 오류는 로그인 후 리다이렉트되는 /index.html 리소스에 접근권한이 명시되어져 있지 않은 경우 발생하는 예외입니다.
기본적으로 예외를 발생하도록 구성 되어 있습니다. FilterSecurityInterceptor의 rejectPublicInvocations 옵션 설정
해당 문제를 해결하기 위한 방법은 아래와 같습니다.
- 리소스에 대한 접근권한을 정의 (추천), 기본적으로 /**에 기본 권한을 부여하는걸 추천드립니다.
- rejectPublicInvocations 옵션을 false로 변경하게 되는 경우 리소스에 대한 접근권한이 명시되어 있지 않더라도 접근 가능(비추천)
추가적으로 로그인 시 사용자에게 권한이 없으면 로그인이 되지 않습니다.
그렇기 때문에 사용자에게 기본 권한을 부여하고 접근제어를 하지 않는 리소스들은 기본 권한으로 매핑하시길 권장드립니다.
감사합니다.
chamomile Selected answer as best 2022년 06월 17일