Перейти к содержимому

Экспорт posture в control towers

Posture export (modules/posture-export) — это исходящая поверхность posture движка: единственный read-only эндпоинт, который control tower опрашивает, чтобы обогатить собственный инвентарь ground-truth-данными движка: графом доступа, дрейфом наименьших привилегий, обнаруженным инвентарём и posture безопасности. Это сторона платформы «интегрировать, а не конкурировать» — она никогда не эмитирует идентичность (это входящее, чем владеет governance), только posture, и ничего не меняет.

Один маршрут, GET /v1/m/posture/export, ограниченный правом posture:export:read и закреплённый за единственным скоупом тенанта. Ответ — это нейтральный JSON-документ, собранный внутри одной аудируемой транзакции с тремя проекциями:

  • inventory — активные обнаруженные сущности (вид, ref, статус, источники сигналов, хосты, первое/последнее наблюдение, число вхождений), опционально фильтруемые через ?kind=.
  • posture_drift — согласованный дрейф наименьших привилегий: наблюдаемые, но не разрешённые доступы, плюс счётчики неиспользуемых грантов и inventory-грантов.
  • findings — находки безопасности, спроецированные только как refs и detail_hash, фильтруемые по порогу ?severity= и по ?category=.

Каждый экспорт минимален по данным — только refs, хеши и связи, никогда сырой полезной нагрузки или секрета — и защитный проход маскирования вычищает каждое свободно-форматное поле. Сам экспорт перемещает данные за пределы устройства, поэтому он самоаудируется в ledger с реальным principal в той же транзакции, что и чтения.

PARTIAL. Действие экспорта live и аудируется; что не проверено — это другой конец. Форматы приёма у названных башен — Microsoft Agent 365 и ServiceNow AI Control Tower — не имеют первоисточного API, относительно которого движок мог бы валидироваться, поэтому это честная проекция в нейтральном JSON, которую башня вытягивает (или оператор маршрутизирует через сконфигурированный sink), явно НЕ работающий нативный push. Каждый ответ несёт эту пометку о происхождении встроенно.

Лимиты на запрос ограничивают inventory, drift и findings; частичный экспорт сообщает собственные флаги усечения и никогда не помечается авторитетным.