Что такое перманентный API-токен
Каждый раз, когда вы делаете запрос к API, используется специальный код доступа — авторизационный токен (access token). Он нужен, чтобы проверить, имеет ли клиент право заходить в аккаунт и выполнять определённые действия.
JSON Web Token
Доступ к EdgeЦентр API предоставляется на основе JSON Web Token (JWT).
Он состоит из трёх частей:
- Заголовок (header). Содержит тип токена и используемый алгоритм цифровой подписи.
- Нагрузка (payload). Данные, которые передаются с помощью токена: назначение, срок действия, время создания и так далее.
- Подпись (signature). Вычисляется на основе заголовка и нагрузки.
Как работает JSON Web Token
- Клиент авторизуется в системе.
- EdgeЦентр API генерирует токен и отправляет его клиенту.
- При каждом следующем запросе клиент передаёт токен.
- API вычисляет и проверяет подпись.
- Если подпись верна, API отправляет ответ клиенту.
Ограничения JSON Web Token
Авторизационный токен существует 1 час. Для его обновления используется refresh token. С помощью него пользователи запрашивают новый авторизационный токен. При этом заново вводить логин и пароль не нужно.
Но и у refresh token есть свой срок жизни — 24 часа. Получается, нашим пользователям нужно вводить логин и пароль раз в сутки. Вроде бы не так уж и часто. Для разовых запросов такая система подходит очень хорошо. Но для автоматизированной работы с нашими сервисами через API это создаёт определённые проблемы.
Например, чтобы настроить автоматическую очистку кеша, клиенту нужно дополнительно прописывать логику авторизации и каждый раз передавать логин и пароль. Это неудобно и не очень безопасно.
Чтобы упростить регулярные автоматизированные запросы к сервисам через API, мы выпускаем перманентные API-токены.
Как работает перманентный API-токен
Основное преимущество перманентного API-токена заключается в том, что при создании вы сами можете задать срок его действия. Срок жизни перманентного токена может быть и неограниченным. Таким образом, работа через API становится проще: не нужно прописывать и поддерживать дополнительную логику автоматизации выпуска токена и каждый раз передавать логин и пароль.
Перманентный API-токен — это случайная строка. В EdgeЦентр API хранится хеш этой строки и информация о владельце.
- Клиент отправляет запрос, подписанный перманентным токеном.
- API проверяет, является ли токен действующим, есть ли в базе его хеш и какому клиенту он соответствует.
- Если всё в порядке, API принимает запрос.
В каких сервисах EdgeЦентр можно использовать перманентный токен
Пока перманентный API-токен можно использовать только в CDN. С его помощью можно автоматизировать любые процессы, которые вы проводите регулярно: например, очистку кеша или запрос статистики.
В будущем мы планируем расширить применение этого токена, чтобы работа с другими нашими продуктами стала ещё удобнее.
Как получить перманентный API-токен
- Авторизуйтесь в личном кабинете.
- Перейдите в раздел «API-токены» в профиле и нажмите «Создать токен».
- Обязательно укажите имя и роль того, кто создаёт токен. Если нужно, задайте дату его истечения. Нажмите «Создать».
- В открывшемся окне вы увидите новый токен. Обязательно скопируйте его! Мы не храним токены, поэтому не сможем показать его второй раз.
Используйте гибкие настройки EdgeCDN для более удобной и безопасной доставки контента.