У меня есть следующая защита hasRole () для antMatchers:
.antMatchers(HttpMethod.GET, "/api/posts/myPosts").hasRole("USER")
Как обрабатывать ответ, если у пользователя нет роли USER? Когда я выполняю GET на /api/posts/myPosts
с пользователем без роли USER, я получаю ответ:
{
"timestamp": "2019-04-14T12:43:31.233+0000",
"status": 403,
"error": "Forbidden",
"message": "Forbidden",
"path": "/api/posts/myPosts"
}
Можно ли создать собственное исключение и обработать его позже в аннотированном классе @RestControllerAdvice
?
Я попробовал другой способ добиться этого, добавив @PreAuthorize("hasRole('USER')")
на уровне метода, затем Spring выбрасывает AccessDeniedException
, и это нормально.