Я пытаюсь использовать роли как области, так и ресурса в приложении java с Spring-Security и Keycloak. К сожалению, keycloak будет возвращать только одно или другое в зависимости от значения:
keycloak.use-resource-role-mappings=true
Вы можете получить и то, и другое с помощью пользовательского кода, но в нем запутаны аннотации, такие как @PreAuthorize или метод spring-boot. isUserInRole, что приводит к уродливому коду.
Есть ли способ переопределить либо метод @PreAuthorize, либо возврат ключа токена JSON, чтобы использовать роли как области, так и ресурса? В настоящее время моя реализация keyclaok использует собственный метод, заменяющий @PreAuthorize в начале каждого метода, и это не очень красиво.
Заранее спасибо.