Proteger cron jobs com o VPC Service Controls

O VPC Service Controls é um recurso do Google Cloud que permite configurar um perímetro seguro para evitar a exfiltração de dados. Neste guia, mostramos como incluir jobs do Cloud Scheduler em um perímetro do VPC Service Controls.

Limitações

As limitações a seguir se aplicam ao suporte do VPC Service Controls para o Cloud Scheduler.

Ações aplicadas

O VPC Service Controls só é aplicado nas seguintes ações:

  • Criação de job do Cloud Scheduler
  • Atualizações de jobs do Cloud Scheduler

Por que isso é importante?

Como o VPC Service Controls só é aplicado na criação e atualização de jobs, ele não é aplicado automaticamente a jobs criados antes da adição do Cloud Scheduler ao perímetro do VPC Service Controls. Os jobs continuarão sendo executados mesmo se os destinos do job não fizerem parte do perímetro do VPC Service Controls ou não forem destinos com suporte. Para aplicar o VPC Service Controls a todos os jobs do Cloud Scheduler:

  • Jobs com destinos incompatíveis ou que estão fora do perímetro: exclua os jobs. Consulte Excluir jobs não compatíveis.
  • Jobs com destinos compatíveis e dentro do perímetro: execute uma atualização em cada job depois de adicionar o Cloud Scheduler ao perímetro. Consulte Aplicar em jobs preexistentes.

Destinos com suporte

A integração do Cloud Scheduler com o VPC Service Controls é compatível apenas com os seguintes destinos:

  • Cloud Functions (no URL functions.net)
  • Cloud Run (no URL run.app dos serviços do Cloud Run. Os destinos do job do Cloud Run não são compatíveis. Para saber mais sobre a diferença entre recursos de serviço e de job do Cloud Run, consulte Serviços e jobs: duas maneiras de executar seu código.
  • API Dataflow (precisa estar no mesmo projeto do Google Cloud que o job do Cloud Scheduler)
  • Pipelines de dados (precisam estar no mesmo projeto do Google Cloud que o job do Cloud Scheduler)
  • Pub/Sub (precisa estar no mesmo projeto do Google Cloud que o job do Cloud Scheduler)

Excluir jobs não compatíveis

Recomendada. Exclua jobs do Cloud Scheduler com destinos que sejam:

  • Incompatível (consulte Destinos compatíveis)
  • Fora do perímetro do VPC Service Controls que você planeja usar

Para instruções sobre como excluir jobs, consulte Excluir um job.

Se você não excluir esses jobs antes de adicionar o Cloud Scheduler ao perímetro do VPC Service Controls, eles continuarão sendo executados, mas o VPC Service Controls não será aplicado a eles (consulte Ações aplicadas).

Por exemplo, se você tiver um job do Cloud Scheduler que vise um destino não aceito (como um domínio personalizado do Cloud Run), ele continuará em execução depois que você adicionar o Cloud Scheduler ao perímetro do VPC Service Controls, mas não será protegido pelo VPC Service Controls. O mesmo acontece com um job preexistente com um destino fora do perímetro do VPC Service Controls.

Adicionar papéis do IAM necessários

Obrigatório. Para usar o VPC Service Controls, a conta de serviço do Cloud Scheduler precisa ter o papel do IAM Cloud Scheduler Service Agent. A conta de serviço do Cloud Scheduler é criada para o projeto automaticamente. Para verificar se ele tem o papel do IAM de agente de serviço do Cloud Scheduler ou para conceder esse papel, siga estas etapas:

  1. No console do Google Cloud, acesse o IAM.

    Acessar IAM

  2. Marque a caixa de seleção Incluir concessões de papel fornecidas pelo Google.

  3. No filtro, digite Conta de serviço do Cloud Scheduler e selecione essa principal.

  4. Procure na coluna Papel do principal da Conta de serviço do Cloud Scheduler. É possível prosseguir se o seguinte papel estiver listado:

    • Agente de serviço do Cloud Scheduler

    Se o papel de conta de serviço do Cloud Scheduler não estiver listado, clique no ícone Editar e conceda o papel Agente de serviço do Cloud Scheduler ao principal da conta de serviço do Cloud Scheduler.

Especificar um perímetro de VPC Service Controls

Obrigatório. É possível usar um perímetro atual ou criar um novo para proteger os jobs do Cloud Scheduler que tenham destinos compatíveis. Ambas as abordagens dão a você a chance de especificar os serviços que serão restringidos. Especifique a API Cloud Scheduler.

Aplique o VPC Service Controls em jobs atuais

Recomendada. Para aplicar o VPC Service Controls a jobs do Cloud Scheduler criados antes de adicionar o Cloud Scheduler ao perímetro do VPC Service Controls, execute um update no job. Você não precisa alterar o job, mas precisa executar a atualização para que o VPC Service Controls seja aplicado ao job e às execuções futuras.

É possível executar uma atualização do job no console do Google Cloud (selecione o job e use o botão Editar), usando a API ou a CLI gcloud.

Para aplicar o VPC Service Controls a um job preexistente usando a CLI gcloud, execute o comando a seguir:

Destinos HTTP

gcloud scheduler jobs update http JOB_ID

Substitua:

  • JOB_ID: o ID do job.

Destinos do Pub/Sub

gcloud scheduler jobs update pubsub JOB_ID

Substitua:

  • JOB_ID: o ID do job.