Spring Authorization Server использует дополнительные параметры из запроса авторизации для входа в систему

Итак, в основном, я хочу, чтобы следующий запрос:

http://127.0.0.1:9000/oauth2/authorize?response_type=code&client_id=test-client&redirect_uri=http://127.0.0.1:8080/authorized&scope=message.read&state=someState?color=red

например, перенаправляется наhttp://127.0.0.1:9000/login?color=red, чтобы я мог получить доступ к параметру цвета для отображения страницы входа. Параметр цвета не обязательно должен быть в URL-адресе, он должен быть просто доступен в Thymeleaf.

Это возможно?

1 ответ

Один из простых способов добиться этого — предоставить пользовательскийAuthenticationEntryPointкоторый читает параметрcolorи добавляет его в редирект на . У меня есть пример , который делает что-то подобное в образце Federated Identity. Ваша реализация будет проще, поскольку вы хотите добавить только?color=...к/login, и не требует никакого другого кода в этом примере.

Вы можете увидеть примененную точку входа здесь .