@PetrW

Зачем нужен редирект при запросе Access token в авторизации Implicit flow?

К примеру, здесь сказано, что в авторизации в SPA по Implicit flow после отправки post запроса ,
POST https://api.authorization-server.com/token
  grant_type=authorization_code&
  code=AUTH_CODE_HERE&
  redirect_uri=REDIRECT_URI&
  client_id=CLIENT_ID


будет редирект на страницу REDIRECT_URI, где будет указан токен

Вопрос а зачем делать редирект? Почему нельзя вернуть токен ответом на post-запрос?
  • Вопрос задан
  • 482 просмотра
Решения вопроса 1
AlekseyNemiro
@AlekseyNemiro
full-stack developer
На этапе преобразования кода авторизации (authorization_code) в маркер доступа (access token), в случае успеха, сервер должен вернуть информацию о маркере доступа в ответ на POST-запрос.

Content-Type: application/json
{
  access_token: "ABC...XYZ",
  refresh_token: "ABC...XYZ",
  expires_in: 123,
  token_type: "Bearer",
  scope: "..."
}


Если это не так, значит, либо код авторизации не проходит, либо поставщик работает неправильно :-) Указывать redirect_uri в данном случае может быть необходимо в качестве дополнительной проверки подлинности запроса, адрес должен соответствовать адресу, который использовался при формировании ссылки входа. Вызова redirect_uri быть не должно. Вызов redirect_uri будет только один раз, когда пользователь пройдет проверку подлинности, выдаст разрешения вашему приложению и поставщик сформирует authorization_code.
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы