Agregar e armazenar os registros da sua organização

Neste documento, descrevemos como gerenciar os registros gerados pelos recursos na sua organização do Google Cloud usando um objeto coletor agregado.

É possível configurar um coletor agregado para interceptar ou não interceptar, dependendo de como você quer ter controle sobre quais registros podem ser consultados ou roteadas pelos coletores de recursos filhos. Neste tutorial, você vai criar um coletor agregado que encaminha os registros de auditoria da organização para um projeto do Google Cloud. Depois, no projeto do Google Cloud, você cria coletor de registros que encaminha os registros de auditoria agregados para um bucket de registros.

Para saber mais sobre coletores agregados, consulte Agrupar e rotear registros no nível da organização e da pasta para destinos compatíveis.

Neste tutorial, você executará as seguintes etapas:

  1. Crie um bucket de registros e um coletor de registros o projeto do Google Cloud em que você quer armazenar os registros agregados.

  2. Em seguida, crie um coletor agregado sem interceptação no nível da organização para e rotear registros para o projeto do Google Cloud.

  3. Em seguida, configure o acesso de leitura para visualizações de registros no novo bucket de registros.

  4. Por fim, você vai consultar e conferir os registros na página "Análise de registros".

.

Antes de começar

Confirme os seguintes itens:

  • Para ter as permissões necessárias para conceder papéis aos principais, peça ao administrador para conceder a você Proprietário (roles/owner) do IAM em um projeto.

  • Se você usa o VPC Service Controls, precisa adicionar uma regra de entrada ao perímetro de serviço. Para mais informações sobre Limitações do VPC Service Controls. Consulte Coletores agregados e limitações do VPC Service Controls.

criar um bucket de registros

Os buckets de registros armazenam os registros roteados de outras pastas, organizações ou projetos do Google Cloud. Para mais informações, consulte Configure buckets de registros.

Para criar o bucket de registros no projeto do Google Cloud em que você quer agregar registros, siga estas etapas:

  1. Acesse o Console do Google Cloud:

    Acessar o Console do Google Cloud

  2. Em um terminal do Cloud Shell, execute o comando comando gcloud logging buckets create.

    Antes de executar o comando a seguir, faça o seguinte substitutos:

    • BUCKET_NAME: o nome do bucket de registros.
    • LOCATION: o local do bucket de registros.
    • PROJECT_ID: o identificador do projeto em que o em um bucket de registros.

    Execute o comando gcloud logging buckets create:

     gcloud logging buckets create BUCKET_NAME \
       --location=LOCATION --project=PROJECT_ID
    
  3. Verifique se o bucket de registros foi criado:

    gcloud logging buckets list --project=PROJECT_ID
    
  4. Opcional: defina o período de armazenamento dos registros no bucket. Este exemplo estende a retenção de registros armazenados no bucket para 365 dias:

    gcloud logging buckets update BUCKET_NAME \
      --location=LOCATION --project=PROJECT_ID \
      --retention-days=365
    

Criar o coletor de registros para envolvidos no projeto

Para rotear as entradas de registro para um bucket de registros, crie um coletor. Um coletor inclui de inclusão, um filtro de exclusão opcional e um destino. Neste o destino é seu novo bucket de registros. Para saber mais sobre coletores, consulte Rotear registros para destinos compatíveis.

Para criar um coletor que roteie entradas de registro para o bucket de registros-criado, faça as substituições a seguir e execute o gcloud logging sinks create comando:

  • PROJECT_LEVEL_SINK_NAME: o nome do projeto coletor de registros.
  • SINK_DESTINATION: o bucket de registros para onde os registros são encaminhados. O formato do caminho de destino para um bucket de registros é o seguinte:

    logging.googleapis.com/projects/PROJECT_ID/locations/LOCATION/buckets/BUCKET_NAME
    
  • PROJECT_ID: o identificador do projeto em que o coletor de registros. Defina essa flag para o mesmo projeto em que o registro foi criado do Google Cloud.

  • Inclua as seguintes sinalizações:

    • --log-filter : use essa sinalização para definir um filter que corresponde ao registro as entradas que você quer incluir no coletor. Neste tutorial, o filtro é para selecionar todas as entradas de registro de auditoria. Se você não definir um filtro, todos e os registros do projeto do Google Cloud são roteados para o destino.
    • --description: use esta sinalização para descrever a finalidade ou o caso de uso do coletor.

    execute o seguinte comando:

    gcloud logging sinks create PROJECT_LEVEL_SINK_NAME SINK_DESTINATION
    --project=PROJECT_ID
    --log-filter='logName:cloudaudit.googleapis.com' \
    --description="Audit logs from my organization" \
    

Criar o coletor agregado

Os coletores agregados combinam e encaminham as entradas de registro dos recursos uma organização ou pasta para um destino.

Neste tutorial, você cria um coletor agregado que não intercepta. Isso significa que cada entrada de registro roteada pelo coletor agregado também é os coletores no recurso de origem da entrada de registro. Por exemplo, uma registro de auditoria originado em um projeto é roteado pelo coletor agregado e pelo coletores desse projeto. Portanto, é possível armazenar diversos cópias de uma entrada de registro.

Você pode criar coletores de interceptação. Para mais informações, consulte Agrupar e rotear registros no nível da organização e da pasta para aceitar destinos.

Configurar o coletor no nível da organização

Para criar um coletor agregado que não seja intercepto e que faça o registro de rotas entradas em um projeto, siga estas etapas:

  1. Execute o comando gcloud logging sinks create.

    Antes de executar o comando a seguir, faça o seguinte substitutos:

    • SINK_NAME: o nome do coletor de registros.
    • PROJECT_ID: o identificador do projeto que armazena o bucket de registros.
    • ORGANIZATION_ID: o identificador da organização.

    Execute o comando gcloud logging sinks create:

    gcloud logging sinks create SINK_NAME \
    logging.googleapis.com/projects/PROJECT_ID  \
      --log-filter='logName:cloudaudit.googleapis.com' \
      --description="Audit logs from my organization" \
      --organization=ORGANIZATION_ID \
      --include-children
    

    A sinalização --include-children é importante para que os registros de todos os projetos do Google Cloud da sua organização também sejam incluídos. Para mais informações, consulte Agrupar e rotear registros no nível da organização para destinos compatíveis.

  2. Verifique se o coletor foi criado:

    gcloud logging sinks list --organization=ORGANIZATION_ID
    
  3. Consiga o nome da conta de serviço:

    gcloud logging sinks describe SINK_NAME --organization=ORGANIZATION_ID
    

    A saída será assim:

    writerIdentity: serviceAccount:o1234567890-ORGANIZATION_ID@gcp-sa-logging.iam.gserviceaccount.com
    
  4. Copie o valor do campo serviceAccount para a área de transferência.

Permitir acesso ao coletor

Depois de criar o coletor agregado, você deve conceder permissão para que o coletor gravar registros no projeto definido como destino. É possível conceder usando o console do Google Cloud ou editando a política do Identity and Access Management (IAM), conforme descrito no Defina permissões de destino.

Para conceder ao coletor permissão para gravar registros, faça o seguinte:

  1. No console do Google Cloud, abra a página IAM.

    Acesse o IAM

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo IAM e administrador.

  2. Selecione o projeto do Google Cloud que contém o bucket de registros.

  3. Clique em CONCEDER ACESSO.

  4. No campo Novos principais, adicione a conta de serviço sem o serviceAccount:.

  5. No menu Selecionar papel, escolha Gravador de registros.

  6. Clique em Salvar.

Gerar registros para auxiliar na verificação do coletor

Para verificar se o coletor agregado está configurado corretamente, tente o seguintes:

  1. Gerar registros de auditoria que precisam ser roteados para o bucket de registros

    • Se você tiver muitos projetos do Google Cloud na organização, talvez você tenha tráfego de registro de auditoria suficiente ou criar qualquer uma para fins de validação. Vá para a próxima etapa.

    • Caso contrário, acesse outro projeto e crie uma VM do Compute Engine e depois a exclua. Os registros de auditoria são gravados quando uma VM é criada, iniciada e excluída.

  2. Siga o procedimento na seção intitulada Veja os registros na página Análise de registros para consultar registros de auditoria. Selecione a visualização _AllLogs.

Configurar o acesso de leitura a uma visualização de registro em um bucket de registros

Quando você cria um bucket de registros, o Cloud Logging cria automaticamente visualização de registros chamada _AllLogs. Essa visualização inclui todas as entrada de registro armazenadas no bucket de registros.

Para restringir o acesso de um principal a entradas de registro específicas, crie uma visualização de registro e, em seguida, execute um dos seguintes procedimentos:

  • Conceda a eles o papel de roles/logging.viewAccessor junto com um Condição do IAM que restringe a concessão à visualização de registros.

  • Na política do IAM associada à visualização de registros, conceda o acesso principal. Recomendamos essa abordagem ao criar um grande número de visualizações de registros.

Para mais informações sobre essas duas abordagens, consulte Controlar o acesso a uma visualização de registros

Nas etapas a seguir, você concede a um principal o papel de roles/logging.viewAccessor junto com uma condição do IAM que restringe a concessão à visualização chamada _AllLogs:

  1. No console do Google Cloud, abra a página IAM.

    Acesse o IAM

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo IAM e administrador.

    Verifique se você selecionou o projeto do Google Cloud que está usando para agregar os registros.

  2. Clique em Adicionar.

  3. No campo Novo principal, adicione um principal.

  4. No menu Selecionar papel, selecione Acessor de visualizações de registros.

  5. Adicione uma condição do IAM à vinculação:

    1. Clique em Adicionar condição e insira um título e uma descrição.
    2. No menu Tipo de condição, role até Recurso e Selecione Nome.
    3. No menu Operador, selecione Termina com.
    4. No campo Valor, digite o nome completo da visualização de registros:

      locations/LOCATION/buckets/BUCKET_NAME/views/_AllLogs
      
    5. Clique em Salvar para salvar a condição.

  6. Clique em Salvar para salvar a vinculação.

Mostrar registros na página Análise de registros

Para ver os registros no bucket de registros, faça o seguinte:

  1. No console do Google Cloud, acesse a página Análise de registros:

    Acessar a Análise de registros

    Se você usar a barra de pesquisa para encontrar essa página, selecione o resultado com o subtítulo Logging.

  2. Selecione Refinar escopo.

  3. No painel Refinar escopo, selecione Escopo por armazenamento.

  4. Selecione a visualização de registros com as entradas que você quer ver. Por exemplo, para exibir todos os registros, selecione a visualização chamada _AllLogs.

  5. Clique em Aplicar.

    A Análise de registros será atualizada para mostrar os registros do bucket de registros.

    Para informações sobre como usar a Análise de registros, consulte Como usar a Análise de registros.