2015-12-29 4 views
0

Я использую Spring Security и Spring OAuth2 в качестве сервера аутентификации для регистрации пользователя. Но я хочу изменить роль пользователя времени выполнения. Но я видел в Интернете Keycloak, но мы не можем просто с весной. У вас есть рекомендация, которая также дает Keycloak?spring security sso browser

ответ

0

Я не совсем уверен, что понимаю. Однако, если вы спрашиваете, можете ли вы изменить роли, возвращенные из Keycloak в вашем защищенном от вируса Spring Security клиенте, загружая роли из другого источника, тогда ответ да, с одной оговоркой.

Вы можете расширить KeycloakAuthenticationProvider, чтобы изменить аутентификацию, прежде чем она будет сохранена в контексте Spring Security. Взгляните на KeycloakUserDetailsAuthenticationProvider для вдохновения.

Предостережение заключается в том, что эти модификации являются локальными только для текущего клиента. Вы не можете изменять роли в токен доступа таким образом и использовать его для вызова другой службы. Если это ваше намерение, вы можете вместо этого расширить один из SPI на сервере Keycloak. Это более сложный подход, но токен доступа может использоваться через службы таким образом.

Смежные вопросы