У меня проблема с получением правильного ответа от контроллера REST, который используется для отправки пользовательских данных обратно. Использование Spring Boot 1.5.10. Вот настройки:
- Проект OAuth2, служащий конечной точкой аутентификации и авторизации
- Микросервисы, которые подключаются к серверу для аутентификации и авторизации
Сервер OAuth использует WebSecurityConfigurerAdapter (порядок 2), ResourceServerConfigurerAdapter (для защиты API, отличного от oauth), AuthorizationServerConfigurerAdapter (конфигурация oauth) и * 1015 GlobalAuthenticationConfigurerAdapter (ldap против аутентификации базы данных).
У меня есть ресурс / api / v1 / me для возврата объекта Principal / Authentication как на сервере OAuth, так и на микросервисе. Микросервис работает правильно и возвращает OAuth2Authentication, когда присутствует надлежащий токен Bearer, или 401, если его нет (токен можно получить с сервера OAuth).
OAuth-сервер, с другой стороны, вызывает у меня некоторые проблемы. Он возвращает ответ / me только тогда, когда я сначала запрашиваю токен (установите JSession) или пересылает меня на страницу входа, если нет. (Я использую authorization_code grant с Thymeleaf). В этом случае я получаю UsernamePasswordAuthenticationToken.
Можно ли настроить сервер на использование Bearer для аутентификации / me и возврата OAuth2Authentication или 401 против сеанса Java на самом сервере OAuth, который мне нужен только для получения самого токена через имя пользователя auth?
Спасибо