Какой запрос следует сделать для обмена кода на токен в рабочем процессе Авторизация кода?
Я пытаюсь настроить Pac4j в своем внутреннем приложении (BE), и для того, чтобы настроить мой угловой интерфейс (FE), мне нужно понять рабочий процесс, который он ожидает, для правильной настройки внутреннего интерфейса.
Я читал множество документации и просматривал исходники Pac4j, чтобы узнать, как получить токен из кода, не раскрывая секрет клиента.
Так...
- Я пытаюсь войти в FE->BE (без аутентификации)
- Я получаю 401
- Я беру 'Location' (аутентификацию Google) из 401 и перенаправляю на него, предоставляя URI обратного вызова
- Я захожу в гугл
- Я перенаправлен обратно на мой обратный вызов URI с кодом
- (Какой запрос я делаю для BE, чтобы получить токен обратно? Т.е. где находится URI токена, который не требует client_secret)
- Я использую полученный токен для доступа и продолжения в обычном режиме, используя BE
1 ответ
Решение
Если вы не хотите использовать client_secret
Тогда вам нужен публичный клиент. Я не уверен, что публичный клиент поддерживается Google.
ИМХО лучшим подходом будет неявный поток в ИП. Он сгенерирует токен доступа, который будет использоваться для вызовов BE API.