MTB ESB Documentation

Проверка в Sandbox

Обязательные сценарии, доказательства и audit перед Production.

Проверка в Sandbox

Sandbox используется для интеграционного тестирования без реальных банковских данных. Перед Production ESB Team оценивает не факт запуска тестов, а доказательства корректного поведения Consumer.

Входные критерии

  • Sandbox application и credentials выданы;
  • API subscriptions активны;
  • network и TLS connectivity проверены;
  • для async API предоставлен тестовый callback URL;
  • Consumer завершил свой тестовый цикл;
  • подготовлен отчёт с маскированными доказательствами.

Общие проверки

  • успешная аутентификация и ожидаемые 401/403 для неверного доступа;
  • корректная передача request ID, trace context и idempotency key;
  • соответствие request/response согласованной OpenAPI schema;
  • негативные сценарии для обязательных полей и content type;
  • корректное поведение при превышении rate limit;
  • TLS и mTLS, если применяется;
  • отсутствие реальных и чувствительных данных;
  • возможность проследить запрос на обеих сторонах.

Sync API

Для синхронного API дополнительно проверяются:

  • ответ в рамках исходного HTTP-вызова;
  • согласованные 2xx, 4xx и 5xx responses;
  • timeout и поведение клиента после timeout;
  • отсутствие опасного автоматического повтора write-операции;
  • соответствие результата бизнес-контракту.

Async API

Для асинхронного API дополнительно проверяются:

  • немедленный acknowledgement согласно контракту;
  • доставка результата на разрешённый callback URL;
  • проверка подписи callback, если она предусмотрена;
  • отклонение сообщения с неверной подписью;
  • retry при временной недоступности callback endpoint;
  • дедупликация повторно доставленного callback;
  • correlation исходного request, acknowledgement и callback.

Callback должен быть идемпотентным

Сетевая доставка допускает повтор. Consumer обязан безопасно распознавать повторное callback-сообщение и не выполнять бизнес-операцию второй раз.

Доказательства

Для каждого сценария сохраняются:

  • маскированный request и response;
  • HTTP status и timestamp;
  • X-External-Request-ID и traceparent;
  • релевантные логи Consumer;
  • для async — acknowledgement, callback и результат проверки подписи;
  • ссылка на test case или audit record.

Credentials, private keys, полные токены и чувствительные payload в доказательства не включаются.

Классификация результатов

SeverityЗначениеВлияние
BlockerНарушение безопасности/контракта или риск потери данныхБлокирует Production
MajorСущественный дефект с возможным обходным путёмТребует согласованного плана
MinorОграниченная некритичная проблемаОбычно не блокирует
ObservationРекомендация или улучшениеИнформационно

Решение audit

Результат фиксируется как:

  • Go — обязательные сценарии пройдены, Blocker отсутствуют;
  • Conditional Go — допустимые Major имеют владельца и согласованный план;
  • No-go — Consumer возвращается в Sandbox после устранения замечаний.

Минимальный audit record

Audit ID:
Consumer / WSO2 Application:
Environment: Sandbox
API and versions:
Flow type: sync | async | mixed
Test period:
Evidence links:
Open findings:
Decision: Go | Conditional Go | No-go
Decision owner:

On this page