Аутентификация

Для обеспечения безопасности и авторизации при работе с API используются параметры auth_login и auth_secret, а также механизм генерации signature.

Основные элементы аутентификации

  • auth_login: Уникальный логин кассы. Этот параметр передается в теле каждого запроса.

  • auth_secret: Секретный ключ, который используется вместе с auth_login для аутентификации. Этот ключ также передается в теле запроса и должен храниться безопасно.

Пример тела запроса
{
  "auth_login": "your_auth_login",
  "auth_secret": "your_auth_secret"
}

Дополнительная подпись запроса

  • Что это: signature — это хэш, который генерируется для обеспечения подлинности данных. Эта подпись создаётся на основе определённых данных, например id и amount, и используется для проверки, что запрос не был изменен и исходит от авторизованного пользователя.

  • Salt: Секретный ключ, который используется для генерации подписи signature. Этот ключ должен храниться безопасно, ведь его передача третьим лицам может привести к потере средств.

  • Генерация: Подпись создаётся путём хеширования определённых данных и salt-ключа с разделителем. Конкретный алгоритм генерации подписи описан в примерах по работе с API.

Пример тела запроса
{
  "auth_login": "your_auth_login",
  "auth_secret": "your_auth_secret",
  "signature": "generated_signature"
}

Использование signature в различных сценариях

  • Исходящие транзакции: При создании и подтверждении исходящих транзакций, например вывод или обмен, вы должны включить сгенерированную подпись в тело запроса.

  • Валидация callback: Для проверки подлинности поступающих уведомлений от API вам нужно сгенерировать signature и сверить полученный хэш с тем, что был отправлен вам в callback уведомлении.

Что делать в случае компрометации?

Если ваши секретные ключи были скомпрометированы, немедленно выполните следующие действия:

  1. Устраните уязвимости: Проверьте и устраните причины, по которым ваши ключи стали доступны посторонним. Используйте только надёжный, личный Telegram аккаунт, обязательно включите облачный пароль.

  2. Сбросьте ключи: Перейдите в настройки вашей кассы в боте и сбросьте ключи. Не забудьте обновите их в вашем приложении.

Last updated