Пятый фактор Отправить заявку
Безопасность и эксплуатация

Подготовка интеграции к смене корневого сертификата Ozon API

Подготовка интеграции к смене корневого сертификата Ozon API защищает обмен от ошибок TLS после перехода Ozon с GlobalSign на HARICA. Корневой удостоверяющий центр — верхняя точка цепочки доверия, по которой серверное приложение проверяет подлинность сертификата API.

Современная операционная система обычно получает актуальные корни через пакет ca-certificates, однако интеграция может использовать собственный CA bundle, Java truststore, старый контейнерный образ, корпоративный прокси или certificate pinning. Тогда браузер открывает Ozon, а фоновое задание получает x509 unknown authority, PKIX path building failed либо ошибку проверки цепочки.

Мы составляем список фактических адресов Seller API, Performance API и других публичных API, затем выполняем handshake из каждой среды, где работает код. Проверяем срок сертификата, полную цепочку, SNI, системное время и источник доверенных корней. Обновление выполняется в том слое, который реально использует HTTP-клиент: пакет ОС, файл CA, Java keystore, контейнер или настройка закрепления.

Проверка сертификата остаётся включённой. После обновления пересобираем образ, запускаем безопасный контрольный запрос и убеждаемся, что авторизация Ozon доходит до ожидаемого ответа API. Команда получает карту окружений, протокол проверки и понятный сигнал мониторинга на случай будущей ошибки доверия.

Срок: 5 рабочих дней

Когда стоит обратиться

Обычно к нам обращаются в таких ситуациях:

  • Ozon API вызывается из старого Linux, Java-приложения, контейнера с давним base image либо закрытого корпоративного контура.
  • В проекте используется собственный cacert, Java keystore, CURLOPT_CAINFO, NODE_EXTRA_CA_CERTS или закрепление сертификата.
  • Тестовый запрос получает unknown authority, certificate verify failed, PKIX path building failed либо похожую TLS-ошибку.
  • Один сервер обращается к API успешно, а другой с тем же ключом останавливается до получения HTTP-ответа Ozon.

Что именно мы сделаем

01

Собираем список Ozon API-хостов, приложений, контейнеров, прокси и trust store, через которые проходит исходящее соединение.

02

Проверяем TLS-handshake и цепочку из каждой рабочей среды тем же рантаймом и HTTP-клиентом, что использует интеграция.

03

Обновляем CA bundle, Java truststore, контейнерный образ либо certificate pinning согласно фактической причине риска.

04

Запускаем контрольные запросы Seller API, Performance API и выбранных адресов с включённой проверкой сертификата.

05

Фиксируем выпуск, откат, мониторинг TLS-ошибок и передаём карту доверия для дальнейшего сопровождения.

Что входит в стоимость

39 900 ₽ за всю работу

Инвентаризируем API-хосты Ozon, операционные системы, контейнеры, версии OpenSSL, Java, cURL или другого HTTP-клиента и собственные хранилища доверия. Проверяем цепочку и handshake из каждого рабочего окружения, обновляем доверенные корневые сертификаты и точечные закрепления, пересобираем образы и добавляем диагностику TLS-ошибок. Проводим контрольные запросы, планируем выпуск и сохраняем способ быстрого отката конфигурации.

Что будет готово

Материалы

Передадим вам

  • Обновлённые CA bundle, Java truststore, контейнерные образы или правила pinning для выбранного контура.
  • Карта Ozon API-хостов, приложений, сред, HTTP-клиентов и источников доверенных сертификатов.
  • Протокол TLS-handshake и контрольных API-запросов из каждой выбранной рабочей среды.
  • Инструкция выпуска, отката и диагностики ошибок цепочки Ozon API.
Проверка

Перед сдачей проверим

  • Каждая выбранная среда завершает TLS-handshake с Ozon API при включённой проверке сертификата и имени хоста.
  • Контрольный запрос доходит до Seller API либо Performance API и получает ожидаемый прикладной HTTP-ответ.
  • Пересобранный контейнер или перезапущенное приложение использует зафиксированный актуальный источник доверия.
  • Мониторинг отличает ошибку TLS от авторизации и прикладного ответа, а инструкция содержит проверенный способ диагностики.

Как это выглядит на практике

Схема подготовки серверной интеграции к смене корневого сертификата Ozon API на HARICA

Фоновая выгрузка Ozon проходит TLS-проверку после обновления контейнера

  1. 01

    Диагностика показывает, что старый контейнер использует собственный CA bundle и останавливается на проверке цепочки.

  2. 02

    Base image и пакет доверенных корней обновляются, затем контейнер собирается с зафиксированной версией конфигурации.

  3. 03

    Тот же HTTP-клиент устанавливает TLS-соединение и получает ожидаемый ответ Seller API на безопасный запрос.

  4. 04

    Новая версия разворачивается по экземплярам, а мониторинг отдельно отслеживает ошибки handshake и ответы API.

Что понадобится для работы

От вас

  • Список используемых доменов Ozon API, приложений, фоновых заданий, прокси, staging и production-сред.
  • Dockerfile, манифесты развёртывания, версии ОС, Java, OpenSSL, cURL, Node.js либо другого HTTP-клиента.
  • Файлы CA bundle, Java truststore и правила certificate pinning, если проект управляет ими самостоятельно.
  • Доступ к журналам и безопасный способ выполнить контрольный API-запрос из каждой выбранной среды.

Если у вас немного другая ситуация

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

Стоимость работ 39 900 ₽ полная стоимость известна заранее
  1. 3 000 ₽после подписания договора через Диадок
  2. 36 900 ₽после выполнения, демонстрации и приёмки результата

Предоплата входит в общую стоимость. Оставшуюся сумму оплачиваете после демонстрации и приёмки готовой работы.

Часто спрашивают

Об этой услуге

Что именно меняет Ozon в сертификатах API?

Ozon объявил переход корневого удостоверяющего центра своих TLS-сертификатов с GlobalSign на HARICA для Seller API, Performance API и других публичных API.

Почему сайт Ozon открывается, а интеграция получает ошибку?

Браузер и серверное приложение могут использовать разные хранилища доверия. Контейнер, Java keystore или собственный cacert иногда содержит другой набор корней.

Как понять, что проблема связана именно с TLS?

Ошибка возникает до прикладного HTTP-ответа и содержит x509, certificate verify, unknown authority либо PKIX. Проверка из того же рантайма показывает этап остановки handshake.

Можно ли отключить проверку сертификата в клиенте?

Проверка сертификата и имени хоста остаётся включённой. Доверие настраивается через актуальный CA bundle, truststore или устойчивое правило закрепления.

Потребуется ли менять Client-Id, Api-Key или токен?

Ключи относятся к прикладной авторизации и обычно сохраняются. Обновление затрагивает TLS-слой, который устанавливает защищённое соединение до передачи запроса.

Какие среды особенно чувствительны к смене корневого центра?

Риск выше у старых ОС, давно собранных контейнеров, изолированных сетей, Java keystore, собственных CA-файлов и проектов с certificate pinning.

Как проверяются Seller API и Performance API?

Из каждой рабочей среды выполняется handshake и безопасный прикладной запрос тем же клиентом. Успешный HTTP-ответ подтверждает прохождение TLS-слоя.

Что останется для следующей ротации сертификатов?

Передаём карту хостов и trust store, команды диагностики, версии образов, мониторинг handshake и порядок обновления с контролируемым выпуском и откатом.

Цена и изменения по ходу работы

Цена на странице окончательная?

Да. Перед началом мы сверяем исходные данные и фиксируем результат в договоре. Указанная на странице сумма покрывает согласованную работу целиком, даже если её техническая реализация потребует больше времени, чем ожидалось при оценке.

Что означает резерв незапланированных работ?

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

Резерв рассчитывается по формуле: стоимость услуги × 30% ÷ 1 500 ₽. Для услуги за 30 000 ₽ это 6 часов. Эти часы относятся только к дополнительным, заранее незапланированным уточнениям. Они не являются сроком проекта и не ограничивают время на основную работу: согласованный результат мы выполняем полностью.

Можно уточнять детали уже во время работы?

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

Начало работы и оплата

Как оформляются договор и оплата?

Подписываем договор через Диадок. Предоплата составляет 3 000 ₽ и входит в общую стоимость услуги. Остаток оплачивается после демонстрации и приёмки готового результата.

Когда начинается срок выполнения?

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

Как учитываются платные лицензии и внешние сервисы?

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

Проверка результата и гарантия

Как принимается готовая работа?

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

Какая гарантия действует после сдачи?

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

Следующий шаг

Опишите задачу

Опишите задачу и желаемый результат. Можно указать сайт, CMS, 1С, CRM, ERP или другую систему — разберёмся в ситуации и предложим подходящий следующий шаг.

Для безопасности не отправляйте в заявке пароли, коды доступа, токены, паспортные и медицинские данные.