Параметры настройки OAuth2
Надстройка SaveToDB позволяет настраивать параметры поставщика OAuth2 при подключении к источникам веб-данных.
Мы уверены, что вы сможете настроить его для любого поставщика.
Ниже приведен пример параметров настройки для ZohoCRM:
Страница содержит текстовое поле для имени поставщика и три раздела:
- Клиентское приложение
- Адреса службы
- Форматы URL и тела
Раздел "Клиентское приложение"
Содержит следующие поля:
- Client ID
- Client secret
- Redirect URI
- Scope
Эти значения можно получить при регистрации приложения у поставщика OAuth2.
В будущих версиях мы планируем добавить встроенные зарегистрированные приложения для популярных провайдеров.
Обычно область действия можно задать. Обратитесь к документации вашего поставщика OAuth.
В приведенном примере запрашиваются все разрешения для всех модулей и разрешения на чтение для параметров.
Раздел "Адреса службы"
Содержит следующие поля:
- URL-адрес авторизации
- URL-адрес получения токена
- URL-адрес обновления токена
- URL-адрес отзыва токена
Эти URL-адреса можно найти в документации вашего поставщика OAuth2.
Вы можете указывать URL-адреса как есть или использовать переменные.
Например, URL-адрес обновления токена может содержать переменную {get_token_url}. В этом случае надстройка будет использовать значение поля URL-адреса получения токена.
Переменные позволяют создавать динамические URL-адреса, используя значения из предыдущих шагов.
Например, ZohoCRM возвращает значение accounts-server
в ответе авторизации, что не типично для других поставщиков. Надстройка позволяет использовать такие значения. Например, поле URL-адреса получения токена может содержать переменную {accounts-server}.
Раздел "Форматы URL и тела"
Содержит форматы URL-адресов и тел запросов.
В OAuth2 определяются стандартные форматы, и надстройка предлагает значения по умолчанию, построенные с использованием переменных.
Форматы можно изменить в соответствии с требованиями вашего поставщика OAuth2.
Переменные
Значения полей диалогового окна можно использовать в форматах URL и тела:
Поле | Переменная |
---|---|
Клиентское приложение | |
Client ID | {client_id} |
Client secret | {client_secret} |
Redirect URI | {redirect_uri} |
Scope | {scope} |
Адреса службы | |
URL-адрес авторизации | {authorization_url} |
URL-адрес получения токена | {get_token_url} |
URL-адрес обновления токена | {refresh_token_url} |
URL-адрес отзыва | {revoke_token_url} |
Форматы URL и тела | |
URL-адрес авторизации | {authorization_url_format} |
URL-адрес получения токена | {get_token_url_format} |
Тело запроса получения токена | {get_token_body_format} |
URL-адрес обновления токена | {refresh_token_url_format} |
Тело запроса обновления токена | {refresh_token_body_format} |
URL-адрес отзыва токена | {revoke_token_url_format} |
Тело запроса отзыва токена | {revoke_token_body_format} |
Таблица ниже содержит типичные значения, определенные в OAuth2:
Поле | Типовое значение |
---|---|
Адреса службы | |
URL-адрес обновления токена | {get_token_url} |
URL-адрес отзыва токена | {get_token_url}/revoke |
Форматы URL и тела | |
URL-адрес авторизации | {authorization_url}?scope={scope}&client_id={client_id}&response_type={response_type}&redirect_uri={redirect_uri} |
URL-адрес получения токена | {get_token_url} |
Тело запроса получения токена | grant_type={grant_type}&client_id={client_id}&client_secret={client_secret}&redirect_uri={redirect_uri}&code={code} |
URL-адрес обновления токена | {refresh_token_url} |
Тело запроса обновления токена | refresh_token={refresh_token}&client_id={client_id}&client_secret={client_secret}&grant_type={grant_type} |
URL-адрес отзыва токена | {revoke_url} |
Тело отзыва токена | token={refresh_token} |
Вы можете использовать следующие переменные, определенные в запросах на утверждение или полученные из ответов на утверждение:
Переменная | Значение |
---|---|
{response_type} | code |
{grant_type} | authorization_code для запросов авторизации и refresh_token для запросов обновления токена |
{code} | Значение code из ответа запроса авторизации |
{access_token} | Значение access_token из ответа запроса получения токена |
{refresh_token} | Значение refresh_token из ответов на запросы получения или обновления токена |
{token_type} | Значение token_type из ответов на запросы получения или обновления токена |
{expires_in} | Значение expires_in из ответов на запросы получения или обновления токена |