6.5 KiB
6.5 KiB
Politica de acesso GPT/MCP Gateway
- report_id:
mcp-gateway-access-policy-a787db3755906de2 - generated_at:
2026-05-02T02:17:13+00:00 - policy_version:
mcp-gateway-access-policy.v1 - endpoint:
https://mcps-gateway.ami-app.workers.dev/v1/execute - status:
passed - live_ready:
True - secret_safe:
True - method:
POST - content_type:
application/json - user_agent:
Codex-Mais-Humana-MCP-Publication-Gate/1.0 - auth_scheme:
Bearer credentialRef; raw token forbidden in artifacts - rate_limit_per_minute:
30 - log_retention_days:
30
Sumario
- Probes live avaliados: 3.
- Probes live OK: 3/3.
- Regras aprovadas: 12/12.
- Bearer bruto persistido: False.
- Falha do plugin Cloudflare nao e blocker operacional: True.
Regras
http.method.post
- kind:
http - required:
True - requisito: Toda chamada GPT/MCP deve usar POST em /v1/execute.
- validacao: Comparar metodo observado com POST.
header.content-type.json
- kind:
header - required:
True - requisito: Toda chamada deve enviar Content-Type application/json.
- validacao: Comparar content_type observado.
header.user-agent.codex
- kind:
header - required:
True - requisito: Probes Codex devem usar User-Agent Codex-Mais-Humana-MCP-Publication-Gate/1.0.
- validacao: Comparar User-Agent observado para separar WAF de runtime.
auth.bearer.present-redacted
- kind:
auth - required:
True - requisito: Authorization Bearer pode ser usado no probe, mas relatorios devem guardar apenas existencia, hash e credentialRef.
- validacao: Confirmar authorization_present e authorization_redacted.
waf.classification.explicit
- kind:
waf - required:
True - requisito: HTTP 403/1010 e bloqueios WAF devem ser separados de tool_not_found, erro de runtime e erro de contrato.
- validacao: Usar http_status e response_excerpt redigido para classificar falha.
evidence.trace-audit-required
- kind:
evidence - required:
True - requisito: Toda resposta aceita deve possuir traceId e auditId reais ou derivados de hash de evidencia.
- validacao: Confirmar trace_id e audit_id por probe.
evidence.hashes-required
- kind:
evidence - required:
True - requisito: Toda evidencia deve guardar request_hash e response_hash sem payload sensivel bruto.
- validacao: Confirmar hashes preenchidos por probe.
redaction.no-secret-shapes
- kind:
redaction - required:
True - requisito: Evidencias nao podem conter cfat_, Authorization Bearer cru, tokens longos ou bearer numerico bruto.
- validacao: Varrer response_excerpt e campos textuais por formatos proibidos.
rate-limit.default
- kind:
rate_limit - required:
True - requisito: Probes automatizados devem respeitar limite padrao de 30 chamadas/minuto por ator.
- validacao: Registrar limite no contrato e bloquear suites que excedam o teto.
retention.logs
- kind:
retention - required:
True - requisito: Logs de evidencia operacional devem reter metadados redigidos por 30 dias.
- validacao: Registrar politica no artefato de acesso.
transit.required-fields
- kind:
transit - required:
True - requisito: Fluxos interplataforma devem preservar origin, destination, tool, payload, actor, permission, result, traceId, auditId e timestamp.
- validacao: Validar campos exigidos no contrato de transito MCP.
governance.plugin-not-operational-path
- kind:
governance - required:
True - requisito: Falha ou aceite do plugin Cloudflare fica fora do diagnostico de Workers; trabalho real usa wrangler ou validacao HTTP live.
- validacao: Confirmar que o artefato nao transforma plugin em blocker operacional.
Probes
mais_humana.rulebook.compacthttp200okTrue- evidenceId:
evidence-a75a27e0669c49da1db8b615 - traceId:
trace-3e1c8f057ac439f4b9b3eb7f - auditId:
audit-a75a27e0669c49da1db8b615 - requestHash:
3e1c8f057ac439f4b9b3eb7f8f5be9ac36323f08adc23db6fc7d51633076b79a - responseHash:
a75a27e0669c49da1db8b6157757c0615eed06c32674c7ed87a6db5d071359de
- evidenceId:
mais_humana.admin_ui.same_sourcehttp200okTrue- evidenceId:
evidence-af37a8d489b0038a7a6b5575 - traceId:
trace-17e7d8039c8c34e3f570b6de - auditId:
audit-af37a8d489b0038a7a6b5575 - requestHash:
17e7d8039c8c34e3f570b6de8b386edc1cfd0c079084b0c7013016d2c76b388c - responseHash:
af37a8d489b0038a7a6b5575970ec69855dd0f0e0ab09cf38b0e7658d3678195
- evidenceId:
mais_humana.mcp_transit.ledgerhttp200okTrue- evidenceId:
evidence-3f0e3b9f829c7ff912b335d0 - traceId:
trace-dae7d91a59e37901d50c027d - auditId:
audit-3f0e3b9f829c7ff912b335d0 - requestHash:
dae7d91a59e37901d50c027d3a0792f697902bd4289801edb2a508f3baf177fe - responseHash:
3f0e3b9f829c7ff912b335d01afb5e78acdaa331bd984713dfca757072be6bbf
- evidenceId:
Checks
http.method.post:passed- motivo: todos os probes usaram POST
- proxima_acao: manter regra como gate de release
header.content-type.json:passed- motivo: todos os probes usaram application/json
- proxima_acao: manter regra como gate de release
header.user-agent.codex:passed- motivo: User-Agent operacional aplicado
- proxima_acao: manter regra como gate de release
auth.bearer.present-redacted:passed- motivo: bearer usado como credencial de probe e redigido nos artefatos
- proxima_acao: manter regra como gate de release
waf.classification.explicit:passed- motivo: WAF nao bloqueou os probes atuais; HTTP/runtime classificados separadamente
- proxima_acao: manter regra como gate de release
evidence.trace-audit-required:passed- motivo: traceId e auditId presentes em todos os probes
- proxima_acao: manter regra como gate de release
evidence.hashes-required:passed- motivo: hashes de request/response presentes
- proxima_acao: manter regra como gate de release
redaction.no-secret-shapes:passed- motivo: nenhum formato de segredo bruto detectado nas evidencias
- proxima_acao: manter regra como gate de release
rate-limit.default:passed- motivo: regra institucional materializada no artefato de politica
- proxima_acao: manter regra como gate de release
retention.logs:passed- motivo: regra institucional materializada no artefato de politica
- proxima_acao: manter regra como gate de release
transit.required-fields:passed- motivo: regra institucional materializada no artefato de politica
- proxima_acao: manter regra como gate de release
governance.plugin-not-operational-path:passed- motivo: regra institucional materializada no artefato de politica
- proxima_acao: manter regra como gate de release
Blockers
- Nenhum blocker tecnico na politica local.