Безопасность данных продавца при работе с WB API

Правила работы с токенами, хранение и реагирование на инциденты

content

Почему безопасность важна

Токен WB API — это ключ доступа к данным вашего магазина. Любой, кто владеет вашим токеном, может получать информацию о товарах, заказах, финансах и, в зависимости от настроек, изменять данные: обновлять цены, редактировать карточки, управлять рекламными кампаниями.

Утечка токена может привести к несанкционированному доступу к данным магазина, изменению цен или другой конфиденциальной информации, а также к финансовым потерям. Относитесь к токену как к паролю от личного кабинета — с той разницей, что этим паролем пользуются не люди, а программы.


Правила работы с токенами

Создавайте отдельный токен для каждой интеграции

Не используйте один токен для нескольких сервисов. Если один из сервисов скомпрометирован, вы просто удалите его токен — остальные интеграции продолжат работать.

Выдавайте минимально необходимые права

При создании токена выбирайте только те категории данных, которые действительно нужны для работы конкретной интеграции. Если сервис работает только с отзывами — не давайте ему доступ к финансам и ценам.

Подробнее — в статье «Категории данных WB API: как выбрать нужные для вашей интеграции»

Используйте правильный тип токена

Каждый тип токена предназначен для своей задачи:

  • Для облачных сервисов из Каталога решений — Сервисный токен
  • Для собственных программ на вашей инфраструктуре — Персональный токен
  • Для тестирования — Тестовый токен

Никогда не передавайте Персональный токен облачным сервисам — он предоставляет расширенные права, включая управление пользователями.

Подробнее о типах токенов и их ограничениях — в статье «Система авторизации WB API».

Ведите учёт токенов

Записывайте, какие токены вы создали, для каких сервисов они используются и когда истекает срок действия. Это поможет при перевыпуске токенов и при разрыве отношений с сервисом-партнёром.

Перевыпускайте токены при смене партнёра

Если сотрудничество со сторонним сервисом или разработчиком прекращено, немедленно удалите токен, который был ему передан, и создайте новый для всех систем, где он использовался.


Как хранить токены

Используйте защищённые хранилища. Менеджеры паролей (1Password, KeePass, Bitwarden и другие) — лучший способ хранения токенов. Они шифруют данные и позволяют организовать доступ.

Не храните токены в открытом виде. Текстовые файлы, заметки, мессенджеры, электронная почта — всё это небезопасные места для хранения токенов.

Не публикуйте токены в коде. Если вы разработчик — никогда не добавляйте токены в репозитории (Git, GitHub, GitLab). Используйте переменные окружения или файлы конфигурации, исключённые из контроля версий.

Ограничьте круг лиц с доступом к токенам. Только сотрудники, непосредственно отвечающие за работу интеграции, должны иметь доступ к токену.


Как реагировать на инциденты

Если токен мог быть скомпрометирован

  1. Немедленно удалите токен в разделе «Интеграции по API» личного кабинета WB Партнёры
  2. Создайте новый токен с такими же настройками
  3. Обновите токен во всех системах, где он использовался
  4. Декодируйте скомпрометированный токен в инструменте декодирования, чтобы проверить его категории и уровень доступа — это поможет понять, к каким данным мог получить доступ злоумышленник. Подробнее — в статье «Декодирование и проверка токенов WB API».
  5. Проверьте, не произошло ли несанкционированных изменений в данных магазина

Если подозреваете несанкционированный доступ к кабинету

Создайте обращение в поддержке продавцов Wildberries в категории «Безопасность личного кабинета» с темой «Несанкционированный вход».

Если сменился владелец кабинета

При смене владельца личного кабинета все ранее созданные токены могут перестать корректно работать. Новый владелец должен создать все токены заново и обновить их в подключённых системах.


Особенности безопасности для разных типов токенов

Персональный токен

Самый «мощный» тип токена — предоставляет доступ к расширенному набору категорий, включая управление пользователями. Именно поэтому его запрещено передавать третьим лицам и использовать в облачных сервисах. Предназначен только для программ на вашей собственной инфраструктуре.

Сервисный токен

Привязан к конкретному сервису из Каталога решений — его невозможно использовать с другим сервисом. Это дополнительный уровень защиты: даже при утечке токен бесполезен для злоумышленника, если он не имеет доступа к инфраструктуре конкретного сервиса.

Базовый токен

Предназначен для сторонних решений, не представленных в Каталоге решений. Предоставляет доступ к ограниченному набору категорий (без управления пользователями). Действуют сниженные лимиты запросов. Не передавайте его сервисам, в которых вы не уверены.

Тестовый токен

Работает только с песочницей (sandbox) и не даёт доступа к реальным данным магазина. Тем не менее, храните его в безопасности — это хорошая практика.


Чек-лист безопасности

  • ✓ Для каждой интеграции создан отдельный токен
  • ✓ Выбраны только необходимые категории данных
  • ✓ Токены хранятся в менеджере паролей или защищённом хранилище
  • ✓ Записаны даты создания и истечения всех токенов
  • ✓ Персональный токен не передан облачным сервисам
  • ✓ Токены не опубликованы в коде или репозиториях
  • ✓ При разрыве с партнёром — токен перевыпущен
  • ✓ Круг лиц с доступом к токенам минимален
  • ✓ При ошибках авторизации — проверен статус токена через инструмент декодирования

Что делать, если интеграция не работает

Если ваша интеграция перестала работать или возвращает ошибки доступа, начните с проверки токена — возможно, он истёк, был отозван или не имеет нужных категорий. Пошаговый алгоритм диагностики — в статье «Ошибки авторизации WB API и их решение».