O blueprint do PCI no Google Kubernetes Engine contém um conjunto de configurações e scripts do Terraform que demonstram como inicializar um ambiente do PCI no Google Cloud. O núcleo desse blueprint é o aplicativo Online Boutique, em que os usuários podem procurar itens, adicioná-los ao carrinho e comprá-los.
Esse blueprint foi desenvolvido para a versão 3.2.1 do Padrão de segurança de dados do setor de cartões de pagamento (PCI DSS). O blueprint permite implantar cargas de trabalho no GKE que se alinham ao PCI DSS de maneira repetível, com suporte e segura.
Arquitetura
Visão geral do projeto
Nesse blueprint, você inicializará um ambiente de dados do titular do cartão (CDE, na sigla em inglês) no Google Cloud que contém a seguinte hierarquia de recursos:
- Um recurso organizacional.
- Um recurso de pasta. Esse tipo fornece um mecanismo de agrupamento e limites de isolamento entre projetos.
Recursos do projeto. Você implantará os seguintes projetos do Google Cloud:
- Rede: o projeto host da VPC compartilhada.
- Gerenciamento: um projeto que manterá a infraestrutura de geração de registros e de monitoramento, como o Cloud Logging.
- No escopo: um projeto que contém os recursos nesse estado. Na solução, o projeto consiste em um cluster do GKE projetado para executar aplicativos no escopo. No exemplo, isso inclui os serviços de front-end, pagamentos e finalização da compra.
- Fora do escopo: um projeto que contém os recursos nesse estado. Na solução, isso é um cluster do GKE projetado para executar o restante dos serviços.
Aplicativo e projetos
O diagrama a seguir ilustra o limite do CDE no Google Cloud e quais projetos estão no escopo da avaliação do PCI do aplicativo microsservices-demo. Ao criar seu ambiente, você usa uma ilustração como esta para comunicar ao Google Cloud sobre recursos dentro e fora do limite do PCI.
O caminho 1
mostra dados de registro dos clusters do Kubernetes que vão para o
Cloud Logging.
Layout de rede
Este diagrama ilustra os detalhes da rede e da sub-rede em cada projeto. Ele documenta os fluxos de dados entre projetos, além de fora e dentro do limite do CDE.
Tráfego criptografado
Este diagrama ilustra o tráfego criptografado que entra e sai do limite do PCI:
- O tráfego criptografado por TLS (HTTPS) de fora da VPC vai para o balanceador de carga público no escopo.
- O tráfego criptografado por TLS entre os nós do cluster do Kubernetes no escopo para o cluster fora do escopo vai para os balanceadores de carga internos.
- O tráfego dos balanceadores de carga internos para o cluster fora do escopo é criptografado com mTLS usando o Istio.
- A comunicação dentro de cada cluster é criptografada com mTLS usando o Istio.
Mapeamento de conformidade
O blueprint descrito neste documento aborda uma variedade de requisitos de conformidade com o PCI DSS. A tabela nesta seção destaca algumas dessas exigências.
Os itens na tabela a seguir não atendem a todos os requisitos. A conformidade com algumas exigências é atendida pela infraestrutura do Google Cloud como parte da responsabilidade compartilhada entre você e o Google. A conformidade com outros requisitos precisa ser implementada por você. Para uma explicação detalhada do modelo de responsabilidade compartilhada, confira Como explorar a segurança do contêiner: o modelo de responsabilidade compartilhada no GKE no blog do Google Cloud.
Os números entre parênteses se referem às seções do documento do padrão de segurança de dados do setor de cartões de pagamento (PCI). É possível fazer o download do documento na biblioteca do site do PCI Security Standards Council.
Requisito | Seção | Descrição |
---|---|---|
Implementar a segmentação e a proteção de limites | 1.3.2, 1.3.4 | Esse blueprint ajuda você a implementar uma segmentação lógica usando projetos do Google Cloud. A segmentação permite criar um limite para a avaliação do PCI. Esse blueprint executa o Istio no Google Kubernetes Engine como um complemento que permite criar uma malha de serviço no cluster do GKE que inclui todos os componentes necessários. O blueprint também cria um perímetro de segurança usando a VPC em todos os projetos do Google Cloud no escopo do PCI. |
Configurar o acesso de privilégio mínimo aos recursos do Google Cloud | 7.1, 7.2 | Esse blueprint ajuda você a implementar o controle de acesso com base em papéis para gerenciar quem tem acesso aos recursos do Google Cloud. O blueprint também implementa controles de acesso específicos do GKE, como controle de acesso com base em papéis (RBAC, na sigla em inglês) e namespaces para restringir (em inglês) o acesso aos recursos do cluster. |
Estabelecer políticas no nível da organização |
Com esse blueprint, você estabelece políticas que se aplicam ao
recurso
Organização
do Google Cloud, como estas:
|
|
Impor a separação de tarefas por meio da VPC compartilhada | 7.1.2, 7.1.3 | Esse projeto usa a VPC compartilhada para conectividade e o controle de rede segregado para aplicar a separação de tarefas (em inglês). |
Aumentar a segurança do cluster | 2.2, 2.2.5 | Os clusters do GKE nesse blueprint são protegidos conforme descrito no Guia de segurança do GKE. |
Essa lista é apenas um subconjunto dos controles de segurança implementados no blueprint que podem atender aos requisitos do PCI DSS. Encontre uma lista completa dessas exigências no documento Requisitos do PCI DSS no GitHub.
Recursos implantáveis
O repositório Blueprint do PCI e GKE no GitHub contém um conjunto de configurações e scripts do Terraform que mostram como inicializar um ambiente do PCI no Google Cloud. O blueprint "PCI no GKE" também mostra serviços, ferramentas e projetos do Google Cloud que são úteis para iniciar seu próprio ambiente do PCI no Google Cloud.
Perguntas frequentes
Recursos
- Conformidade com o PCI DSS no Google Cloud. Esse guia ajudará você a resolver questões exclusivas dos aplicativos do Google Kubernetes Engine (GKE) quando for implementar as responsabilidades do cliente para os requisitos do PCI DSS.