Recuperar erros do VPC Service Controls nos registros de auditoria

Nesta página, descrevemos como encontrar erros do VPC Service Controls usando o Cloud Logging.

O VPC Service Controls ajuda a reduzir os riscos de exfiltração de dados ao isolar os serviços multilocatários do Google Cloud. Para mais informações, consulte Visão geral do VPC Service Controls.

Determinar se um erro é resultante do VPC Service Controls

O VPC Service Controls pode modificar as propriedades do Google Cloud e ter efeitos em cascata nos serviços. Isso pode dificultar a depuração de problemas, principalmente se você não souber o que procurar.

As alterações no perímetro de serviço podem levar até 30 minutos para serem propagadas e entrarem em vigor. Quando as alterações são propagadas, o acesso aos serviços restritos no perímetro não tem permissão para cruzar o limite do perímetro, a menos que explicitamente autorizado.

Para determinar se um erro está relacionado ao VPC Service Controls, verifique se você ativou o VPC Service Controls e o aplicou aos projetos e serviços que está tentando usar. Para verificar se os projetos e serviços estão protegidos pelo VPC Service Controls, verifique a política no nível da hierarquia de recursos.

Imagine um cenário de exemplo em que você usa indiretamente um serviço marcado como restrito pelo VPC Service Controls em um projeto que está dentro de um perímetro de serviço. Nesse caso, o VPC Service Controls pode estar negando o acesso.

Normalmente, os serviços propagam mensagens de erro a partir das respectivas dependências. Se você encontrar um dos erros a seguir, ele indicará um problema com o VPC Service Controls.

  • Cloud Storage: 403: Request violates VPC Service Controls.

  • BigQuery: 403: VPC Service Controls: Request is prohibited by organization's policy.

  • Outros serviços: 403: Request is prohibited by organization's policy.

Usar o ID exclusivo do erro

Ao contrário do console do Google Cloud, a ferramenta de linha de comando gcloud retorna um ID exclusivo para erros do VPC Service Controls. Para localizar entradas de registro de outros erros, filtre os registros usando metadados.

Um erro gerado pelo VPC Service Controls inclui um ID exclusivo que é usado para identificar os registros de auditoria relevantes.

Para informações sobre um erro usando o ID exclusivo, faça o seguinte:

  1. No console do Google Cloud, acesse a página do Cloud Logging do projeto dentro do perímetro de serviço que acionou o erro.

    Acessar o Cloud Logging

  2. No campo de filtro de pesquisa, insira o ID exclusivo do erro.

Você verá a entrada de registro relevante.

Filtrar registros usando metadados

Use a Análise de registros para encontrar erros relacionados ao VPC Service Controls. É possível usar a linguagem de consulta do Logging para recuperar os registros. Para informações sobre como criar consultas, consulte Como criar consultas usando a linguagem de consulta do Logging.

Console

Para acessar as últimas 24 horas de erros do VPC Service Controls no Logging, faça o seguinte:

  1. No console do Google Cloud, acesse a página do Cloud Logging.

    Acessar o Cloud Logging

  2. Verifique se você está no projeto que está dentro do perímetro de serviço.

  3. No campo de filtro de pesquisa, digite o seguinte:

    protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"
    
  4. No menu Recurso, selecione Recurso auditado.

  5. No menu do seletor de período, escolha Últimas 24 horas.

  6. Opcional: para encontrar os erros do VPC Service Controls que ocorreram durante um período diferente, use o menu do seletor de período.

gcloud

  • Para acessar as últimas 24 horas de erros do VPC Service Controls, use o comando a seguir:

    gcloud logging read 'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"'
    

    Por padrão, o comando read está limitado às últimas 24 horas. Para acessar registros do VPC Service Controls de um período diferente, use um dos comandos a seguir:

  • Para recuperar registros que foram gerados dentro de um determinado período a partir da data atual, execute o seguinte comando:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=DURATION
    

    DURATION é um período de tempo formatado. Para mais informações sobre formatação, consulte formatos de duração e hora relativos para gcloud CLI.

  • Para recuperar todos os erros do VPC Service Controls ocorridos na última semana, execute o seguinte comando:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata"' \
      --freshness=7d
    
  • Para recuperar registros que foram gerados entre datas específicas, execute o seguinte comando:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
    timestamp>="START_DATETIME" AND
    timestamp<="END_DATETIME"'
    

    START_DATETIME e END_DATETIME são strings formatadas de data/hora. Para mais informações sobre formatação, consulte formatos absolutos de data e hora da gcloud CLI.

    Por exemplo, para acessar todos os erros do VPC Service Controls ocorridos entre 22 e 26 de março de 2019:

    gcloud logging read \
    'protoPayload.metadata.@type:"type.googleapis.com/google.cloud.audit.VpcServiceControlAuditMetadata" AND
      timestamp>="2019-03-22T23:59:59Z" AND
      timestamp<="2019-03-26T00:00:00Z"'
    

A seguir