Авторизация по JWT-токену
JSON web token (JWT) — это уникальный токен с зашифрованной в нём информацией. С помощью него ваше приложение получает доступ к ресурсам интернет-банка по API.
Авторизация с помощью JWT проще, чем по OAuth 2.0: вы просто генерируете токен в интернет-банке, задаёте время его жизни (TTL) и права доступа, а затем используете его в заголовках запросов.
Как сгенерировать JWT
- Откройте в интернет-банке сервис «Интеграции и API».
- Нажмите «Подключить».
- Нажмите «Сгенерировать JWT-ключ».
- Укажите название токена. Оно может быть любым и поможет отличить этот токен от других.
- Укажите срок доступа токена. После его истечения доступ к интернет-банку с этим токеном будет невозможен, и его нужно будет перевыпустить.
- Нажмите «Продолжить».
- Выберите доступы — какие действия в интернет-банке можно будет выполнить с этим JWT. Если у вас несколько компаний, разрешения нужно выбрать для каждой из них. По умолчанию выбраны все доступы для всех компаний.
- Нажмите «Продолжить».
- Мы отправим смс-код на номер, который привязан к аккаунту текущего пользователя. Введите его для подтверждения операции.
- Токен будет сгенерирован. Нажмите «Готово» в окне успеха.
Как использовать JWT
Когда вы сгенерируете токен, откроется экран, на котором он будет отображаться. Скопируйте его, а затем вставьте в заголовок Authorization в запросах. Значение заголовка должно выглядеть так: Bearer <jwt_token>.
На экране также будет отображаться client_id. Скопируйте его тоже — он пригодится для работы с вебхуками.
Перевыпустить, удалить и скопировать токен или client_id вы всегда можете в сервисе «API и интеграции» интернет-банка. Все токены отображаются в блоке «JWT-ключи».
Как перевыпустить JWT
Если при генерации токена вы указали ограниченный срок доступа, к дате его истечения нужно перевыпустить токен. Как это сделать:
- Перейдите в сервис «Интеграции и API» в интернет-банке.
- В блоке «JWT-ключи» откройте токен, который нужно перевыпустить.
- Вы увидите задачу «Перевыпустите ключ» — она появляется за неделю до даты окончания срока доступа. Нажмите на неё.
- Введите название ключа и срок его доступа. Права доступа у токена останутся теми, которые вы указали при его создании.
- Нажмите «Перевыпустить ключ».
- Введите код из смс — мы отправим его на номер текущего пользователя интернет-банка.
- Токен будет перевыпущен. Нажмите «Готово» на экране успеха.
При перевыпуске токена обновляется не только JWT, но и client_id. Старые токен и идентификатор после перевыпсука JWT будут удалены.
FAQ
Как отозвать токен
Если вам нужно закрыть токену доступ к ресурсам банка, просто удалите его в интернет-банке. API-запросы с удалённым токеном будут возвращать ошибку 403.
Можно ли изменить доступы или срок доступа у сгенерированного токена
Фактически нет. Если вы измените доступы токена или срок его доступа, токен будет перевыпущен.