Безопасность Spring - Как сопоставить роли внутри токена доступа, чтобы включить аннотации @RolesAllowed в JSR250 - PullRequest
0 голосов
/ 13 июля 2020

Мы пытаемся аутентифицировать / авторизовать наше приложение Java с помощью Spring Security. Наш поставщик удостоверений является настраиваемым поставщиком OAUTH (управляет пользователем и его разрешениями) и после успешной аутентификации перенаправляет в наше приложение с помощью токена доступа (JWT). Токен подписан с использованием алгоритма HS256, и после успешного декодирования мы можем получить все разрешения, которые есть для пользователя. Возникает вопрос, как я могу использовать существующую структуру авторизации, предоставляемую Spring Security, например, аннотации JSR250, такие как @RolesAllowed, с данными пользователя, которых нет в Spring framework?

Во всех примерах, которые я видел до сих пор, Spring framework управляет самой UserDetailsService , где Spring - это Aware деталей пользователя.

Итак, вопрос в том, как я могу сопоставить роли, которые я получаю в Token, чтобы информировать Spring framework чтобы применить эти роли к аннотациям @RolesAllowed в конечных точках REST. Я считаю, что мне нужно написать некоторую индивидуальную реализацию UserDetailsService?

...