MagicМеджик
ВойтиНачать

Как мы храним ключ WB и другие секреты

Ключ API Wildberries — самое чувствительное, что продавец доверяет сервису. Здесь — что мы с ним делаем, что храним, кто это видит и как ключ отозвать.

Короткий ответ

Ключ API Wildberries хранится в базе зашифрованным (AES-256-GCM). Ключ шифрования лежит на сервере отдельно от базы и в её копии не попадает. В кабинете и в боте виден только хвост — последние четыре символа. В журналы сервиса ключ не пишется никогда. Мы делаем им только запросы на чтение: ничего в вашем кабинете WB Меджик не меняет, а с ключом «только на чтение» и не может изменить. Отозвать ключ можно в любой момент в кабинете WB — сайт продолжит работать на уже загруженной копии каталога.

Что храним, где и кто видит

ЧтоГдеКто видит
Ключ API WBв базе — шифротекст AES-256-GCM, свой случайный nonce на каждое значение; ключ шифрования — переменная окружения сервера, в базе и её бэкапах его нетникто. Расшифровывается только процессом сервера в момент запроса к WB. Ни в кабинете, ни в админке, ни у основателя ключ прочитать нельзя — интерфейса для этого не существует
Маска ключаотдельная колонка: «…» + 4 последних символавы, в кабинете — чтобы понять, какой ключ подключён
Карточки, фото, характеристики, цены, остаткинаша база и файловое хранилище на серверах в Россиивсе — это и есть ваша витрина
Отзывы и вопросы с WBнаша базапокупатели на витрине, если блок включён
Ключи кассы ЮKassaтак же, как ключ WB: шифротекст в базе, наружу масканикто
Пароль от аккаунта Меджиктолько необратимый хешникто, включая нас
Логин и пароль от кабинета WBне храним и не спрашиваем
Данные банковских карт покупателейне храним: карту вводят на странице платёжного провайдера

Какие права нужны ключу

При создании ключа в кабинете WB («Настройки → Доступ к API») отметьте категории «Контент», «Цены и скидки» и «Вопросы и отзывы» и оставьте галочку «Только на чтение». Больше нам не нужно. Остатки сервис читает из отчётов по складам WB и складам продавца; если в ключе нет нужной категории, остаток помечается как «неизвестен», а не как ноль, и сайт всё равно собирается.

Что сервис делает с ключом

  1. Один раз проверяет, что ключ живой — запрашивает одну карточку. Если WB отвечает отказом, вы видите причину в кабинете; сам ключ при этом в поле сервиса не оседает.
  2. Загружает каталог: карточки, фото, характеристики, цены, остатки.
  3. Загружает отзывы и вопросы покупателей — для блока отзывов на витрине.
  4. Обновляет цены и остатки — по кнопке в кабинете или по расписанию. Расписание построено с уважением к лимитам WB: не чаще раза в час на магазин, запросы разнесены по времени.
  5. В Telegram-боте сообщение с ключом удаляется из чата первым же действием — до проверки и до ответа; в ответ бот показывает только маску.

Чего сервис не делает

Про предупреждение WB — честно

Wildberries при выпуске ключа предупреждает, что его не стоит передавать сторонним сервисам. Меджик — сторонний сервис. Мы не можем обещать, что WB никогда не изменит правила, и не делаем вид, что предупреждения нет. Что мы можем — сделать ключ бесполезным для чужого и легко отзываемым:

Как отозвать ключ

  1. В кабинете WB: «Настройки → Доступ к API» → удалить ключ. С этого момента ни один запрос от Меджика не проходит; при следующем обращении подключение в кабинете Меджика получит статус «недействителен» с причиной от WB.
  2. Заменить ключ в Меджике: вставьте новый на экране импорта — старый перезаписывается.
  3. Удалить зашифрованную копию у нас без замены: отдельной кнопки в кабинете пока нет — напишите на hello@get-magic.ru, удалим вручную и подтвердим письмом.

Частые вопросы

Увидит ли WB, что ключом пользуется сторонний сервис?

Запросы идут с нашего сервера; для WB это выглядит как любая интеграция. Ключ с именем «Мой сайт» вы всегда узнаете в списке.

Что будет, если у вас утечёт база?

В копии базы ключи лежат шифротекстом. Без ключа шифрования, который в базе не хранится, они бесполезны — схема хранения проектировалась ровно под этот сценарий.

Кто из вашей команды может прочитать мой ключ?

Никто. Интерфейса для этого нет, и внутреннее правило запрещает его делать.

Нужен ли ключ, чтобы сайт работал?

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

Я поменял цены на WB — что делать?

Нажать «Обновить цены и остатки» в кабинете или дождаться обновления по расписанию. Поля, которые вы правили руками на сайте, обновление не трогает.

О Меджике · Реквизиты · Политика обработки ПДн · Контакты

Другие страницы