Я расширил сервер авторизации для поддержки типа предоставления пароля, чтобы клиенты могли получать токены доступа через конечную точку /oauth2/token.
Вот текущее поведение:
Клиент вызывает /oauth2/token с помощью Grant_type=пароль, имя пользователя и пароль.
Пароль отправляется в виде обычного текста через HTTPS.
Я хотел бы избежать передачи пароля в виде обычного текста, хотя HTTPS обеспечивает шифрование на транспортном уровне.
В идеале я хочу реализовать такой механизм, как шифрование RSA, при котором клиент шифрует пароль с помощью открытого ключа, а сервер перед этим расшифровывает его. аутентификация.
Мои вопросы:
Каков рекомендуемый способ реализации передачи пароля в виде не простого текста в Spring Authorization Server 1.4.3?
Есть ли какая-либо встроенная точка расширения или фильтр, где я могу перехватить и расшифровать пароль перед аутентификацией?
Или мне следует настроить AuthenticationConverter / AuthenticationProvider для реализации предоставления пароля?
Среда:
- Spring Boot 3.4.5
- Spring Authorization Server 1.4.3
- Java 17
Подробнее здесь: https://stackoverflow.com/questions/798 ... ization-se
Мобильная версия