Использование Refresh Token

Поток с refresh token — это более безопасный способ авторизации API-запросов. Вместо прямого использования одних долгоживущих учетных данных вы обмениваете refresh token на краткоживущий access token. Когда срок действия этого access token истекает, вы выполняете обмен снова.

Чтобы использовать этот поток, выберите параметр refresh token при создании токена в Admin → Developer. При создании вы получите три значения:

  • Client ID – идентифицирует вашу интеграцию

  • Client secret – аутентифицирует запрос на обмен

  • Refresh token – используется для получения access token

These credentials are shown once. Скопируйте и надежно сохраните все три значения — Altium не хранит их и не сможет показать их снова после того, как вы покинете страницу создания. Относитесь к refresh token и client secret как к паролям.

Обмен Refresh Token на Access Token

Отправьте запрос POST к endpoint токена Altium Identity.

Token Endpoint

Область

URL

Altium 365

https://auth.altium.com/connect/token

Altium 365 Gov Cloud

https://auth.365-gov.altium.com/connect/token

Request Body (application/x-www-form-urlencoded)

grant_type=refresh_token
refresh_token={refresh-token}
client_id={client-id}
client_secret={client-secret}

Response

{
  "access_token": "...",
  "expires_in": 14400,
  "token_type": "Bearer",
  "refresh_token": "...",
  "scope": "..."
}

Используйте access_token из ответа для авторизации API-запросов. expires_in указывается в секундах и показывает, как долго действителен access token.

curl Example:

curl -X POST https://auth.altium.com/connect/token \
  -H "Content-Type: application/x-www-form-urlencoded" \
  --data-urlencode "grant_type=refresh_token" \
  --data-urlencode "refresh_token={refresh-token}" \
  --data-urlencode "client_id={client-id}" \
  --data-urlencode "client_secret={client-secret}"

Интеграция в ваше приложение

Типовой шаблон для долгосрочных интеграций:

  1. Надежно храните refresh token, client ID и client secret (например, в переменных окружения или в менеджере секретов).

  2. При запуске вызывайте endpoint токена, чтобы получить новый access token.

  3. Используйте access token для API-запросов. Кэшируйте его до истечения срока действия.

  4. После истечения срока действия (401 Unauthorized) снова обменяйте refresh token, чтобы получить новый access token.

Срок действия refresh token истекает по истечении периода, заданного при создании (до 1 года). После истечения срока действия refresh token вам потребуется создать новый в Admin → Developer.

См. также

 

AI-LocalizedЛокализовано с помощью ИИ
Если вы обнаружили проблему, выделите текст/изображение и нажмитеCtrl + Enter, чтобы отправить нам свой отзыв.
Контент