Exportar descobertas em massa para o BigQuery

As exportações em massa sob demanda permitem exportar snapshots de descobertas do Security Command Center para o BigQuery. Essas exportações são compatíveis com análises de segurança personalizadas, auditoria de conformidade e relatórios. As exportações em massa complementam as exportações contínuas capturando estados de descoberta históricos em um momento específico.

Para saber mais sobre o BigQuery, leia a documentação do BigQuery.

Recursos compatíveis com exportações em massa

Com as exportações em massa, é possível:

Estrutura do conjunto de dados

As descobertas são exportadas para o BigQuery como linhas na tabela findings, que é agrupada por source_id, finding_id e event_time.

Cada conjunto de dados contém uma tabela findings com os seguintes campos:

Campo Descrição
source_id

Um identificador exclusivo que o Security Command Center atribui à origem de uma descoberta. Por exemplo, todas as descobertas da fonte de detecção de anomalias do Cloud têm o mesmo valor source_id.

Exemplo: 1234567890

finding_id Identificador exclusivo que representa a descoberta. É único dentro de uma fonte para uma organização. É alfanumérico e tem no máximo 32 caracteres.
event_time

A hora em que o evento ocorreu ou a hora em que uma atualização da descoberta ocorreu. Por exemplo, se a descoberta representar um firewall aberto, o event_time vai capturar o horário em que o detector acredita que o firewall foi aberto. Se a descoberta for resolvida depois, esse horário vai refletir quando isso aconteceu.

Exemplo: 2019-09-26 12:48:00.985000 UTC

Para mais informações sobre as mudanças que atualizam o horário do evento, consulte Visão geral do ciclo de vida das descobertas.

bulk_export_id

Para exportações em massa, é um UUID.

Para exportações contínuas, esse campo fica vazio.

finding

Um registro de dados de avaliação, como segurança, risco, integridade ou privacidade, que é ingerido no Security Command Center para apresentação, notificação, análise, teste de políticas e aplicação. Por exemplo, uma vulnerabilidade de scripting em vários locais (XSS) em um aplicativo do App Engine é uma descoberta.

Saiba mais sobre campos aninhados na referência da API do objeto Finding.

resource

Informações relacionadas ao recurso do Google Cloud associado a essa descoberta.

Saiba mais sobre campos aninhados na referência da API do objeto Resource.

Custo

Você receberá cobranças do BigQuery relacionadas a esse recurso para armazenar dados no BigQuery. Para mais informações, consulte Preços de armazenamento do BigQuery.

Antes de começar

Conclua as etapas abaixo antes de ativar esse recurso.

Configurar permissões

Para concluir este guia, você precisa ter os seguintes papéis de gerenciamento de identidade e acesso (IAM):

Criar um conjunto de dados do BigQuery

Crie um conjunto de dados do BigQuery seguindo as etapas em Criar conjuntos de dados.

Ative a API Security Command Center.

Para exportar descobertas, ative a API Security Command Center seguindo estas etapas:

  1. Acesse a página "Biblioteca de APIs" no console do Google Cloud .

    Acessar a biblioteca de APIs

  2. Selecione o projeto em que você quer ativar a API Security Command Center.

  3. No campo de pesquisa, digite Security Command Center e clique no Security Command Center nos resultados da pesquisa.

  4. Na página da API exibida, clique em Ativar.

A API Security Command Center está ativada no seu projeto.

Conceder acesso de perímetro no VPC Service Controls

Se você usa o VPC Service Controls, consulte Como conceder acesso ao perímetro no VPC Service Controls e siga as etapas, se necessário.

Essa etapa precisa ser repetida para cada usuário que criar uma exportação em massa para um determinado perímetro de serviço.

Criar uma regra de entrada para a nova exportação em massa do BigQuery

Se você usa o VPC Service Controls, consulte Criar uma regra de entrada para a nova exportação para o BigQuery e siga essas etapas, se necessário.

Limitações das exportações em massa do BigQuery

Considere as seguintes restrições ao criar exportações em massa do BigQuery:

  • Só é permitido realizar três exportações em massa simultâneas por vez para uma única organização.
  • Se você solicitar várias exportações em massa não simultâneas para o mesmo conjunto de dados do BigQuery, as descobertas mais recentes na exportação serão anexadas à tabela findings do BigQuery. As descobertas não são substituídas.

Criar uma exportação em massa do BigQuery

É possível realizar uma exportação em massa de descobertas para uma organização, um projeto ou uma pasta.

Para iniciar uma exportação em massa de descobertas para uma instância do BigQuery, use a CLI gcloud e siga estas etapas:

  1. Acesse o console do Google Cloud .

    Acesse o console do Google Cloud .

  2. Selecione o projeto para o qual você ativou a API Security Command Center.

  3. Clique em Ativar o Cloud Shell.

  4. Para criar uma nova configuração de exportação, execute este comando:

    gcloud scc findings export-to-bigquery PARENT \
        --dataset=DATASET_NAME \
        [--location=LOCATION; default="global"] \
    

    Substitua:

    • PARENT: o nome relativo do escopo de exportação: organização, projeto ou pasta. Exemplos de formatos: organizations/ORGANIZATION_ID, projects/PROJECT_ID, folders/FOLDER_ID
    • DATASET_NAME: o nome do conjunto de dados do BigQuery. Exemplo de formato: projects/PROJECT_ID/datasets/DATASET_ID
    • LOCATION: o local do Security Command Center em que uma configuração de exportação será criada. Se a residência de dados estiver ativada, use eu, sa ou us. Caso contrário, use o valor global. Essa variável é opcional.

      Por exemplo, para criar uma exportação em massa de todas as descobertas, execute o seguinte comando:

      gcloud scc findings export-to-bigquery organizations/123
        --dataset=projects/123/datasets/DATASET
      

      Em termos de residência de dados, o exemplo anterior chama o endpoint global.

      Para criar a mesma exportação em massa para o endpoint eu, execute o seguinte comando:

      gcloud scc findings export-to-bigquery organizations/123
        --dataset=projects/123/datasets/DATASET
        --location=locations/eu
      

Esse comando retorna um objeto de operação de longa duração que contém uma string name necessária para acompanhar o status da exportação. Para acompanhar o status dessa exportação em massa do BigQuery, consulte Ver o status de uma exportação em massa.

Para conferi-las, consulte Conferir descobertas.

Consultas

Para ver uma variedade de consultas que podem ser usadas para analisar dados de descobertas, consulte Consultas úteis.

Ver o status de uma exportação em massa

Para conferir o status de uma exportação em massa, você precisa da string long running operation name que foi retornada quando você criou a exportação em massa.

  1. Acesse o console do Google Cloud .

    Acesse o console do Google Cloud .

  2. Selecione o projeto para o qual você ativou a API Security Command Center.

  3. Clique em Ativar o Cloud Shell.

  4. Para verificar os detalhes da configuração de exportação em massa, execute o seguinte comando:

    gcloud scc operations describe LONG_RUNNING_OPERATION_NAME \
        --organization=ORGANIZATION_ID
    

    Substitua:

    • LONG_RUNNING_OPERATION_NAME: a string name retornada quando você criou a exportação em massa.
    • ORGANIZATION_ID

      Por exemplo, para ver o status de uma solicitação de exportação em massa que retornou name: "long-running-operation-name" de uma organização com um ID da organização definido como 123, execute o seguinte comando:

      gcloud scc operations describe long-running-operation-name \
        --organization=123
      
  • Se uma exportação for bem-sucedida, a resposta vai conter done: true.
  • Se uma exportação falhar, a resposta vai conter um código do erro.
  • Se uma exportação ainda estiver em andamento, a resposta não vai conter done: true nem um código do erro.

Exportações em massa e contínuas do BigQuery

Se você quiser usar as exportações em massa e contínuas do BigQuery juntas no mesmo conjunto de dados do BigQuery, há duas abordagens possíveis:

  • Primeiro, crie uma exportação contínua e, em seguida, preencha com uma exportação em massa.

    1. Configurar uma exportação contínua para um conjunto de dados do BigQuery. Depois que a exportação for criada, você vai começar a receber as descobertas do Security Command Center em tempo real.

    2. Crie uma exportação em massa usando o mesmo conjunto de dados de destino do BigQuery. Um snapshot de todas as descobertas do Security Command Center no momento da exportação é exportado para o conjunto de dados selecionado.

    A exportação em massa leva tempo para ser executada. Assim, se a exportação contínua for criada em T1, a exportação em massa será acionada em T2 e o snapshot das descobertas para a exportação em massa será concluído em T3, então registros duplicados poderão ser vistos entre T1 e T3. No entanto, não há lacunas de descoberta.

  • Crie uma exportação em massa primeiro e, em seguida, crie uma exportação contínua.

    1. Criar uma exportação em massa. Um snapshot de todas as descobertas do Security Command Center no momento em que a exportação é executada é exportado para o conjunto de dados do BigQuery selecionado.

    2. Configure uma exportação contínua para o mesmo conjunto de dados de destino do BigQuery. Depois que a exportação for criada, você vai começar a receber descobertas do Security Command Center em tempo real.

    Se a exportação em massa for criada em T1, o snapshot das descobertas para exportação em massa será concluído em T2 e a exportação contínua será acionada em T3. Assim, as descobertas entre T2 e T3 poderão estar ausentes no conjunto de dados do BigQuery.

A seguir