O blueprint do PCI no Google Kubernetes Engine contém um conjunto de Terraform configurações e scripts que demonstram como inicializar um ambiente do PCI em Google Cloud. O núcleo desse blueprint é o Online Boutique aplicativo, em que os usuários podem procurar itens, adicioná-los ao carrinho e comprar itens.
Esse blueprint foi desenvolvido para o Padrão de segurança de dados do setor de cartões de pagamento (PCI DSS) versão 3.2.1. 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) 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 Google Cloud projetos:
- 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 Google Cloud sobre recursos dentro e fora de seu 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 Google Cloud infraestrutura 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, veja Como explorar a segurança do contêiner: o modelo de responsabilidade compartilhada no GKE no Google Cloud blog.
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 Google Cloud projetos. 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 VPC em todos os Google Cloud projetos no escopo do PCI. |
| Configurar o acesso de privilégio mínimo aos Google Cloud recursos | 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 Google Cloud recursos. 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 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 seu
Google Cloud
recurso
Organização, 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 PCI and GKE Blueprint repositório (em inglês) no GitHub contém um conjunto de configurações e scripts do Terraform que mostram como inicializar um ambiente do PCI em Google Cloud. O blueprint "PCI no GKE" também mostra Google Cloud serviços, ferramentas, e projetos que são úteis para iniciar seu próprio Google Cloud ambiente do PCI.
Perguntas frequentes
Recursos
- Conformidade com o PCI DSS no Google Cloud. Este guia ajuda 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.