Аудитор SOC 2 спрашивает «кто имеет доступ к прод-данным и как он отзывается», а в ответ — «ну, агент…». Trust Services Criteria не знают слова «агент», но требуют evidence по тем же CC. Без явного маппинга — gap в отчёте.
Почему SOC 2 спотыкается об агентов
Три разрыва: нет inventory (агент не в CMDB), нет least privilege evidence (standing token в .env), нет human oversight логов. Аудитор видит CC6.1 — logical access, CC7.2 — system monitoring, CC9.2 — risk assessment без артефактов — и ставит exception.
5 evidence, которые хочет аудитор
- Inventory + Owner — реестр всех агентов и MCP-серверов с
owner, purpose, data_class, approved_by, last_review. Без владельца — нет контроля. - Policies as Code — версионированные Cedar/OPA-правила с
allow/deny, scope иapproved_by, diff между версиями. - Logs 6+ месяцев — tamper-evident логи каждого
tools/callсagent_id × human_delegator × tool × resource × result × policy_version, хранение ≥6 мес (как в EU AI Act Art.12). - Human oversight —
human-in-the-loopдля write/delete иon-the-loopдля мониторинга, с логами approve/reject и kill switchrevokedFrom. - Periodic review — квартальный review доступа агентов и MCP (кто, зачем, какие scope), с протоколом и revocation каскадом.
Без любого — gap.
Маппинг на CC*
- CC6.1 (Logical access) — inventory + least privilege + mTLS/OIDC на registry/gateway + short-lived JIT (15m–1h).
- CC7.2 (System monitoring) — AEBA/ABA baseline + deviation alerts + SIEM ingest (CEF/LEEF) + revocation.
- CC6.2 (Access provisioning) — approve workflow (
register → approve → deploy) с двойным подписом для прод-БД. - CC9.2 (Risk assessment) — quarterly review + risk register для агентов.
- CC8.1 (Change management) — versioned
tools/list+verify-registry-syncгейт.
Аудитору показываете один экспорт — и он видит и доступ, и мониторинг, и изменения.
Частые провалы
- standing credential в коде/
envвместо Vault + broker; tools/listменяется без версионирования (silent update);- логи без
human_delegator— анонимная NHI; - нет
last_review— агент живёт с момента создания; - revoke без каскада — отзыв родителя не отзывает инструменты.
Каждый — отдельный exception, вместе — qualified opinion.
Чеклист readiness за 2 недели
- реестр агентов+MCP с владельцами и
last_review<90 дней; - 100% MCP за registry с mTLS/OIDC,
draftне в проде; - политики в Git с
approveи диффом; - логи
agent×human×tool×resource×result×policy≥6 мес, immutable; -
human-in-the-loopдля всех write/delete с логами; -
kill switchтест (revoke за <1 мин); - quarterly review протокол.
Закройте семь галочек — и SOC 2 проходит с теми же артефактами что и EU AI Act.
Где Codenik
Codenik отдаёт аудитору один evidence pack: registry с владельцами, versioned политики, OTel-логи 6+ мес с подписью, approve-логи и revocation-журнал. verify-codenik-site-гейт в вашем репо уже проверяет часть этого. Аудит без ручного сбора — экспорт из gateway.
Короткий вывод
SOC 2 не требует новых контролей для агентов — требует применить старые к новой сущности. Соберите 5 evidence, замапьте на CC* и пройдите чеклист — и агент станет таким же управляемым активом как человек с доступом.