Controlando o escopo PCI
Em construção
Esta página está em construção. O conteúdo pode mudar ou estar incompleto.
O cenário
Contexto
A empresa recebe pagamentos com cartão, então precisa seguir o PCI DSS, o padrão de segurança para dados de cartão. Os sistemas que tocam esses dados formam o escopo PCI, que é auditado e caro de manter, por isso é mantido o menor possível. Tudo que se conecta a ele entra no escopo.
O que acontece
Um agente propõe uma nova arquitetura de visão de gastos para os clientes. Para pegar os dados rápido, consome os eventos de cartão.
Como a ASL ajuda?
Com ASL, o escopo PCI é declarado nos manifestos, e toda proposta é conferida contra ele.
Hoje: Markdown como harness
network-diagram-v4.pdf · escopo revisado há 8 meses
No escopo PCI
payment-servicetokenizer
Fora do escopo PCI
ledger-servicepayment-eventscard-eventsspend-insights · proposto
Agente propõe
spend-insightscard-eventsspend-insights consumes card-events
Nada confere essa conexão antes do merge.
A auditoria encontra o spend-insights ligado a dados de cartão. Ele, e tudo que ele toca, entra no escopo PCI: meses de retrabalho.
Arquitetura como Código com ASL
label pci: "true" nos manifestos
No escopo PCI
payment-servicetokenizercard-events
Fora do escopo PCI
ledger-servicepayment-eventsspend-insights · proposto
Agente propõe
spend-insightscard-eventsspend-insights consumes card-events
Application touches PCI data but is not declared in PCI scope; use a tokenized source or ask for a PCI approval
architecture/payments.asl.yaml:51 · acme.pci-scope-is-declaredAgente corrige
spend-insightspayment-eventsspend-insights consumes payment-events
O spend-insights agora lê o payment-events, que carrega só tokens.
$ asl ./architecture --policies-bundle-path ./policies
ok
O escopo é declarado, e toda conexão que o atravessa é conferida antes de qualquer código.