поэтому я следовал руководству по настройке Keycloak для защиты моего REST API Spring Boot с помощью Spring Security. Раньше мое приложение для аутентификации пользователей полагалось на стандартную службу сведений о пользователях. Мой код основан на возможности доступа к имени пользователя текущего вошедшего в систему пользователя. Однако теперь, когда я перешел на Keycloak, я получаю только имя пользователя «anonymousUser».
Как правильно настроить следующий код, чтобы он возвращал предпочтительное имя пользователя:
Код: Выделить всё
public static String getCurrentUsername() {
Код: Выделить всё
return (String) SecurityContextHolder.getContext().getAuthentication().getPrincipal();
Я пытался изменить конфигурацию клиента и пользователя в Keycloak, но даже, например, добавление ролей не дало никакого эффекта. Spring Boot возвращает только роль [ANONYMOUS_USER].
Подробнее здесь:
https://stackoverflow.com/questions/751 ... -authentic