Oauth2 - Как автоматически получить токен доступа - PullRequest
0 голосов
/ 09 октября 2018

У меня есть задача, для вызова которой нужно вызвать внешний Oauth2 API .

Этапы аутентификации этого API:

  1. Запрос аутентификации приложения:

https://api.apiname/v1/oauth?app_id= [значение] &redirect_url = [значение] & response_type = [значение] & scope = [значение] & состояние = [значение]

-> Он будет перенаправлен на страницу входа в этот API

Войдите, затем получите код Используйте этот код, затем запросите получение токена доступа:

https://api.apiname/v1/token?grant_type=oauth_code&app_id=[value]&secret=[value]&code=[value]

Используйте полученный токен доступа для вызова определенного API для получения данных.

Итак, как я могу автоматически выполнить шаг 1,2,3 в моей системе, потому что клиент не должен входить в API для получения кода?Есть ли способ, которым я могу пройти через шаг 1, не показывая страницу входа в систему?

1 Ответ

0 голосов
/ 09 октября 2018

Я думаю, что основная цель типа предоставления кода авторизации в OAuth2 состоит в том, чтобы использовать сторонний вход без необходимости сохранять учетные данные пользователя в нашем приложении.

"Is there a way I can go through step 1 without showing login page?": Если вы сделаете это, это будет в некотором смысле потоком учетных данных клиента.Я не эксперт, но я думаю, что это технически возможно при использовании драйвера chrome / firefox, заполняющего данные для вас с помощью веб-скрапинга.Но подумайте дважды, прежде чем использовать его, так как вы переопределяете всю цель типа предоставления AuthCode.

см .: Защита существующего API с помощью нашего собственного решения

...