Configure os VPC Service Controls

Os VPC Service Controls são uma Google Cloud funcionalidade que lhe permite configurar um perímetro que ajuda a proteger contra a exfiltração de dados. Este guia mostra como usar o VPC Service Controls com o Dataform para ajudar a tornar os seus serviços mais seguros.

Os VPC Service Controls oferecem uma camada adicional de defesa para Google Cloud serviços que é independente da proteção fornecida pela gestão de identidade e de acesso (IAM).

Para saber mais acerca do VPC Service Controls, consulte o artigo Vista geral do VPC Service Controls.

Limitações

O Dataform suporta os VPC Service Controls com as seguintes limitações:

Considerações de segurança

Quando configura um perímetro dos VPC Service Controls para o Dataform, deve rever as autorizações concedidas aos agentes e às contas do serviço Dataform para verificar se correspondem à sua arquitetura de segurança.

Consoante as autorizações que concede ao agente do serviço do Dataform ou à conta de serviço personalizada, esse agente do serviço ou conta de serviço pode ter acesso aos dados do BigQuery ou do Secret Manager no projeto ao qual o agente do serviço ou a conta de serviço pertence, independentemente dos VPC Service Controls. Nesse caso, restringir o Dataform com um perímetro dos VPC Service Controls não bloqueia a comunicação com o BigQuery nem o Secret Manager.

Deve bloquear a comunicação com o BigQuery se não precisar de executar invocações de fluxos de trabalho originadas dos seus repositórios do Dataform. Para mais informações sobre como bloquear a comunicação com o BigQuery, consulte o artigo Bloqueie a comunicação com o BigQuery.

Deve bloquear a comunicação com o Secret Manager se nenhum dos seus repositórios do Dataform se ligar a um repositório Git de terceiros. Para mais informações sobre o bloqueio da comunicação com o Secret Manager, consulte o artigo Bloqueie a comunicação com o Secret Manager.

Antes de começar

Antes de configurar um perímetro de serviço do VPC Service Controls para o Dataform, siga o guia Restrinja repositórios remotos para definir a política da organização dataform.restrictGitRemotes.

A política da organização dataform.restrictGitRemotes é necessária para garantir que as verificações dos VPC Service Controls são aplicadas quando usa o Dataform e que o acesso de terceiros aos repositórios Git do Dataform é restrito.

Funções necessárias

Para receber as autorizações de que precisa para configurar um perímetro de serviço dos VPC Service Controls, peça ao seu administrador para lhe conceder a função de IAM de editor do Access Context Manager (roles/accesscontextmanager.policyEditor) no projeto. Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

Também pode conseguir as autorizações necessárias através de funções personalizadas ou outras funções predefinidas.

Para mais informações acerca das autorizações do VPC Service Controls, consulte o artigo Controlo de acesso com a IAM.

Configure os VPC Service Controls

Pode restringir o Dataform com um perímetro de serviço dos VPC Service Controls das seguintes formas:

  • Adicione o Dataform a um perímetro de serviço existente que restringe o BigQuery.
  • Crie um perímetro de serviço que restrinja o Dataform e o BigQuery.

Para adicionar o Dataform a um perímetro de serviço que restringe o BigQuery, siga o guia Atualize um perímetro de serviço na documentação do VPC Service Controls.

Para criar um novo perímetro de serviço que restrinja o Dataform e o BigQuery, siga o guia Crie um perímetro de serviço na documentação dos VPC Service Controls.

Opcional: bloqueie a comunicação com o BigQuery

A forma como o Dataform comunica com o BigQuery depende do tipo de conta de serviço usada no Dataform.

O agente do serviço Dataform predefinido usa a autorização bigquery.jobs.create para comunicar com o BigQuery. Concede as funções de agente de serviço do Dataform predefinidas que contêm esta autorização quando concede as funções necessárias para o Dataform executar fluxos de trabalho no BigQuery.

Para bloquear a comunicação entre o agente de serviço do Dataform predefinido e o BigQuery, tem de revogar todas as funções predefinidas e personalizadas que contenham a autorização bigquery.jobs.create, que foram concedidas ao agente de serviço do Dataform predefinido. Para revogar funções, siga o guia Faça a gestão do acesso a projetos, pastas e organizações.

As contas de serviço personalizadas usam as seguintes autorizações e funções para comunicar com o BigQuery:

  • A autorizaçãobigquery.jobs.create é concedida à conta de serviço personalizada.
  • A função criador de tokens da conta de serviço (roles/iam.serviceAccountTokenCreator) foi concedida ao agente de serviço do Dataform predefinido na conta de serviço personalizada.

Pode bloquear a comunicação entre uma conta de serviço personalizada e o BigQuery de qualquer uma das seguintes formas:

  • Revogue a função Criador de tokens de contas de serviço (roles/iam.serviceAccountTokenCreator) concedida à conta de serviço predefinida na conta de serviço personalizada selecionada. Para revogar a função Criador de tokens de contas de serviço (roles/iam.serviceAccountTokenCreator), siga o guia Gerir o acesso a contas de serviço.

  • Revogue todas as funções predefinidas e personalizadas concedidas ao nível do projeto à conta de serviço personalizada que contenham a autorização bigquery.jobs.create. Para revogar funções, siga o guia Faça a gestão do acesso a projetos, pastas e organizações.

A autorização bigquery.jobs.create está incluída nas seguintes funções de IAM do BigQuery predefinidas que têm de ser revogadas:

Opcional: bloqueie a comunicação com o Secret Manager

O Dataform usa a autorização secretmanager.versions.access para aceder a segredos individuais do Secret Manager. Concede esta autorização ao agente do serviço Dataform predefinido num segredo do Secret Manager selecionado quando associa um repositório do Dataform a um repositório de terceiros.

Para bloquear a comunicação entre o Dataform e o Secret Manager, tem de revogar o acesso a todos os segredos do agente de serviço do Dataform predefinido.

Para revogar o acesso a um Secret do Secret Manager do agente de serviço do Dataform predefinido, siga o guia Gerir acesso a Secrets na documentação do Secret Manager. Tem de revogar todas as funções predefinidas e personalizadas que contenham a autorização secretmanager.versions.access, concedida ao agente do serviço Dataform predefinido no segredo selecionado.

A autorização secretmanager.versions.access está incluída nas seguintes funções de IAM do Secret Manager predefinidas:

O que se segue?