Configurar o VPC Service Controls para conectores de integração

O VPC Service Controls permite definir um perímetro de segurança em torno o serviço Integration Connectors do Google Cloud. Com a segurança é possível restringir os dados em um perímetro do VPC Service Controls e mitigar os riscos de exfiltração de dados. Se você ainda não conhece o VPC Service Controls, é recomendável ler as seguintes informações:

Neste documento, descrevemos como restringir o acesso ao serviço Integration Connectors (connectors.googleapis.com). usando o perímetro do VPC Service Controls. Depois de configurar o perímetro, é possível configurar políticas que determinam quais outras Os serviços ou usuários do Google Cloud podem acessar o serviço connectors.googleapis.com.

Considerações

  • Caso sua conexão esteja se conectando a um recurso do Google Cloud, esse recurso precisa ser acessíveis de dentro do perímetro do VPC Service Controls.
  • Se você tiver conexões com um endpoint público, antes de configurar o perímetro do VPC Service Controls, verifique se essas conexões usam o anexo do PSC (Private Service Connect) para conectar os sistemas de back-end. Sem o anexo do PSC, as conexões atuais a um endpoint público vai falhar depois de configurar o perímetro do VPC Service Controls.
  • Caso sua conexão esteja se conectando a um recurso que não é do Google Cloud, o destino deve ser um anexo PSC. As conexões criadas sem o anexo PSC falharão.
  • Se você estiver configurando um perímetro do VPC Service Controls para seu projeto do Google Cloud, não será possível usar o recurso de inscrição de eventos no projeto.

Antes de começar

Verifique se você tem as permissões necessárias para configurar os perímetros do VPC Service Controls. Para conferir uma lista de papéis do IAM necessários para configurar o VPC Service Controls, consulte Controle de acesso com o IAM na documentação do VPC Service Controls.

Criar um perímetro do VPC Service Controls

Para criar um perímetro de VPC Service Controls, é possível usar Google Cloud console, ou o comando gcloud ou a API accessPolicies.servicePerimeters.create. Para mais informações, consulte Criar um perímetro de serviço.

As etapas a seguir mostram como criar um perímetro do VPC Service Controls com um acesso de usuário ativado usando os comandos gcloud.

  1. Crie um arquivo access.yaml com os detalhes do usuário que tem permissão para acessar o perímetro. Exemplo:
    - members:
        - user:USER_EMAIL
  2. Encontre o ID da política de acesso da sua organização usando o seguinte comando:
  3. gcloud access-context-manager policies list --organization=ORGANIZATION_ID

    Esse comando lista todas as políticas da organização. Na lista, selecione a política para a qual você quer criar o perímetro do VPC Service Controls.

    É possível ver o ID do recurso da sua organização usando o console do Google Cloud. Para mais informações, consulte Como conseguir o ID do recurso da sua organização.

  4. Crie um nível de acesso para o usuário.
    gcloud access-context-manager levels create ACCESS_LEVEL_NAME \
    --title "CUSTOM_TITLE" \
    --basic-level-spec access.yaml \
    --policy=POLICY_ID

    Neste comando, POLICY_ID é o valor que você recebeu na etapa anterior.

  5. Nas configurações globais do projeto do Google Cloud, defina o valor do atributo vpcsc como true.
    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"vpcsc": true}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/settings

    Esse comando retorna um ID de operação e inicia uma operação de longa duração (LRO, na sigla em inglês) que pode levar algum tempo. Aguarde a conclusão da LRO. Você pode acompanhar o progresso a operação usando o seguinte comando:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/operations/OPERATION_ID
  6. Crie o perímetro do VPC Service Controls e conceda acesso ao usuário.
    gcloud access-context-manager perimeters create PERIMETER_NAME \
    --title="PERIMETER_TITLE" \
    --resources=projects/PROJECT_ID \
    --restricted-services=connectors.googleapis.com \
    --access_levels=ACCESS_LEVEL_NAME

    Esse comando leva algum tempo para ser concluído. Durante esse tempo, é possível executar outras tarefas em uma nova terminal.

    Se você quiser atualizar o nível de acesso e adicionar o serviço connectors.googleapis.com a um perímetro atual, execute o seguinte comando:
    gcloud access-context-manager perimeters update PERIMETER_NAME \
    --add-restricted-services="connectors.googleapis.com" \
    --add-access-levels=ACCESS_LEVEL_NAME \
    --policy=POLICY_ID

Verificar o perímetro

Para verificar o perímetro, use o comando gcloud access-context-manager perimeters describe PERIMETER_NAME. Exemplo:

gcloud access-context-manager perimeters describe PERIMETER_NAME

Para mais informações, consulte Como gerenciar perímetros de serviço.

Remover um projeto do perímetro do VPC Service Controls

Para remover seu projeto do Google Cloud do perímetro do VPC Service Controls, siga estas etapas:

  1. Nas configurações globais do projeto do Google Cloud, defina o valor do atributo vpcsc como false.
    curl -X PATCH -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -d '{"vpcsc": false}' \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/settings

    Esse comando retorna um ID de operação e inicia uma operação de longa duração (LRO, na sigla em inglês) que pode levar algum tempo. Aguarde a conclusão da LRO. Você pode acompanhar o progresso a operação usando o seguinte comando:

    curl -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    https://connectors.googleapis.com/v1/projects/PROJECT_ID/locations/global/operations/OPERATION_ID
  2. Remova o projeto do perímetro do VPC Service Controls.
    gcloud access-context-manager perimeters update accessPolicies/POLICY_ID/servicePerimeters/PERIMETER_NAME

A seguir

Saiba como o VPC Service Controls protege seus dados.