Agrupar e encaminhar registros no nível da organização e da pasta para destinos compatíveis

Neste documento, você verá como criar coletores agregados. Os coletores agregados permitem combinar e encaminhar registros gerados pelos recursos do Google Cloud na sua organização ou pasta para um local centralizado.

Visão geral

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

Se você quiser controlar quais entradas de registro podem ser consultadas nesses recursos ou roteadas pelos coletores nesses recursos, configure um coletor agregado para não interceptar ou interceptar:

  • Um coletor agregado não interceptador encaminha entradas de registro por coletores em recursos filhos. Com esse sink, você mantém a visibilidade das entradas de registro nos recursos em que elas foram geradas. Os coletores que não interceptam não são visíveis para recursos filhos.

    Por exemplo, é possível criar um coletor agregado que não intercepta e que roteia todas as entradas de registro geradas nas pastas contidas em uma organização para um bucket de registros central. As entradas de registro são armazenadas no bucket de registros central e também nos recursos em que as entradas de registro foram geradas.

  • Um coletor agregado de interceptação impede que as entradas de registro sejam roteadas por coletores em recursos filhos, exceto coletores _Required. Esse coletor pode ser útil para evitar que cópias duplicadas de entradas de registro sejam armazenadas em vários lugares.

    Por exemplo, considere os registros de auditoria de acesso a dados, que podem ser grandes em volume e caros para armazenar várias cópias. Se você tiver ativado os registros de auditoria de acesso a dados, poderá criar um coletor de interceptação no nível da pasta que encaminha todos os registros de auditoria de acesso a dados para um projeto central para análise. Esse coletor de interceptação também impede que coletores em recursos filhos roteiem cópias dos registros para outro lugar.

    Os coletores de interceptação impedem que os registros sejam transmitidos pelo roteador de registros de recursos filhos, a menos que os registros também correspondam ao coletor _Required. Como os registros são interceptados, eles não são contados para métricas com base em registros ou políticas de alertas com base em registros nos recursos filhos. É possível conferir os coletores de interceptação na página Roteador de registros dos recursos filhos.

Para informações sobre como gerenciar coletores, consulte Rotear registros para destinos compatíveis: gerenciar coletores.

É possível criar até 200 coletores por pasta ou organização.

Destinos possíveis

Você pode usar coletores agregados não interceptadores para rotear entradas de registro dentro ou entre as mesmas organizações e pastas para os seguintes destinos:

  • Bucket do Cloud Logging: oferece armazenamento no Cloud Logging. Um bucket de registro pode armazenar entradas de registro que são recebidas por vários projetos do Google Cloud. O bucket de registros pode estar no mesmo projeto em que as entradas de registro são originadas ou em um projeto diferente. Para informações sobre como visualizar entradas de registro armazenadas em buckets de registro, consulte Visão geral dos registros de consulta e visualização e Visualizar registros roteados para buckets do Cloud Logging.

    É possível combinar seus dados do Cloud Logging com outros dados atualizando um bucket de registros para usar a Análise de dados de registros e, em seguida, criando um conjunto de dados vinculado, que é um conjunto de dados somente leitura que pode ser consultado pelas páginas BigQuery Studio e Looker Studio.

  • Conjunto de dados do BigQuery: oferece armazenamento de entradas de registro em um conjunto de dados do BigQuery gravável. O conjunto de dados do BigQuery pode estar no mesmo projeto em que as entradas de registro são originadas ou em um projeto diferente. É possível usar os recursos de análise de Big Data nas entradas de registro armazenadas. Para saber como visualizar entradas de registro roteadas para o BigQuery, consulte Conferir registros roteados para o BigQuery.

  • Bucket do Cloud Storage: armazena entradas de registro no Cloud Storage. O bucket do Cloud Storage pode estar no mesmo projeto em que as entradas de registro originam ou em um projeto diferente. As entradas de registro são armazenadas na forma de arquivos JSON. Para informações sobre como visualizar entradas de registro roteadas para o Cloud Storage, consulte Visualizar registros roteados para o Cloud Storage.
  • Tópico do Pub/Sub: oferece suporte a integrações de terceiros. As entradas de registro são formatadas em JSON e encaminhadas para um tópico do Pub/Sub. O tópico pode estar no mesmo projeto em que as entradas de registro originam ou em um projeto diferente. Para informações sobre como visualizar entradas de registro roteadas para o Pub/Sub, consulte Ver registros roteados para o Pub/Sub.

  • Projeto do Google Cloud: roteie entradas de registro para outro projeto do Google Cloud. Nessa configuração, os coletores no projeto de destino processam as entradas de registro.

Práticas recomendadas para interceptar sinks

Ao criar um sink de interceptação, recomendamos que você faça o seguinte:

  • Considere se os recursos filhos precisam de controle independente do roteamento das entradas de registro. Se um recurso filho precisar de controle independente de determinadas entradas de registro, verifique se o sink de interceptação não encaminha essas entradas.

  • Adicionar dados de contato à descrição de um sink de interceptação. Isso pode ser útil se as pessoas que gerenciam o coletor de interceptação forem diferentes daquelas que gerenciam os projetos com entradas de registro que estão sendo interceptadas.

  • Para testar a configuração do coletor, crie primeiro um coletor agregado que não intercepte para garantir que as entradas de registro corretas estejam sendo roteadas.

Sinks agregados e VPC Service Controls

As limitações a seguir se aplicam ao usar coletores agregados e o VPC Service Controls:

  • Os coletores agregados podem acessar dados de projetos dentro de um perímetro de serviço. Para impedir que coletores de registros agregados acessem dados em um perímetro, recomendamos usar o IAM para gerenciar as permissões de registro.

  • O VPC Service Controls não é compatível com a adição de recursos de pasta ou organização a perímetros de serviço. Portanto, não é possível usar o VPC Service Controls para proteger os registros no nível da pasta e da organização, incluindo os registros agregados. Para gerenciar as permissões do Logging no nível da pasta ou da organização, recomendamos o uso do IAM.

  • Se você encaminhar registros usando um coletor no nível da pasta ou da organização para um recurso protegido por um perímetro de serviço, será necessário adicionar uma regra de entrada ao perímetro de serviço. A regra de entrada precisa permitir o acesso ao recurso da conta de serviço que o coletor agregado usa. Para mais informações, consulte as páginas a seguir:

  • Ao especificar uma política de entrada ou saída para um perímetro de serviço, não é possível usar ANY_SERVICE_ACCOUNT e ANY_USER_ACCOUNT como um tipo de identidade ao usar um coletor de registros para encaminhar registros a recursos do Cloud Storage. No entanto, é possível usar ANY_IDENTITY como o tipo de identidade.

Antes de começar

Antes de criar um coletor, verifique se:

  • Você tem uma pasta ou organização do Google Cloud com entradas de registro que podem ser vistas no Explorador de registros.

  • Você tem um dos seguintes papéis do IAM para a organização ou pasta do Google Cloud a partir da qual está roteando entradas de registro.

    • Proprietário (roles/owner)
    • Administrador do Logging (roles/logging.admin)
    • Gravador de configuração de registros (roles/logging.configWriter)

    As permissões contidas nesses papéis permitem criar, excluir ou modificar coletores. Para informações sobre como definir papéis do IAM, consulte o Guia de controle de acesso do Logging.

  • Você tem um recurso em um destino compatível ou pode criar um.

    O destino precisa ser criado antes do coletor por meio da Google Cloud CLI, do console do Google Cloud ou das APIs do Google Cloud. É possível criar o destino em qualquer projeto do Google Cloud em qualquer organização, mas é necessário garantir que a conta de serviço do coletor tenha permissões para gravar no destino.

  • Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

    REST

    Para usar as amostras da API REST nesta página em um ambiente de desenvolvimento local, use as credenciais fornecidas para gcloud CLI.

      Install the Google Cloud CLI, then initialize it by running the following command:

      gcloud init

    Para mais informações, consulte Autenticar para usar REST na documentação de autenticação do Google Cloud.

Criar um coletor agregado

Console

Para criar um coletor agregado para sua pasta ou organização, faça o seguinte:

  1. No Console do Google Cloud, acesse a página Roteador de registros:

    Acessar o roteador de registros

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

  2. Selecione uma pasta ou organização existente.

  3. Selecione Criar coletor.

  4. No painel Detalhes do coletor, insira os seguintes detalhes:

    • Nome do coletor: forneça um identificador para o coletor. Depois de criar o coletor, não será possível renomeá-lo, mas será possível excluí-lo e criar um novo coletor.

    • Descrição do coletor (opcional): descreva a finalidade ou o caso de uso do coletor.

  5. Escolha uma destas opções:

    • Para criar um coletor de interceptação, no menu Selecionar serviço do coletor, selecione Projeto do Google Cloud e insira o nome totalmente qualificado do destino. Para informações sobre a sintaxe, consulte Formatos de caminho de destino.

    • Para criar um coletor não interceptador, acesse o menu Selecionar serviço de coletor e faça um destes procedimentos:

      • Para encaminhar entradas de registro para um projeto diferente do Google Cloud, selecione Projeto do Google Cloud e insira o nome totalmente qualificado do destino. Para informações sobre a sintaxe, consulte Formatos de caminho de destino.

      • Para encaminhar entradas de registro para um serviço no mesmo projeto do Google Cloud, selecione uma das seguintes opções:

        • Conjunto de dados do BigQuery: selecione ou crie o conjunto de dados específico para receber as entradas de registro roteadas. Você também tem a opção de usar tabelas particionadas.
        • Bucket do Cloud Storage: selecione ou crie o bucket específico do Cloud Storage para receber as entradas de registro roteadas.
        • Tópico do Pub/Sub: selecione ou crie o tópico específico para receber as entradas de registro roteadas.
        • Splunk: selecione o tópico do Pub/Sub do serviço Splunk.
      • Para rotear entradas de registro para um serviço em um projeto diferente do Google Cloud, faça o seguinte:

        1. Selecione Outro recurso.
        2. Insira o nome totalmente qualificado do destino. Para informações sobre a sintaxe, consulte os Formatos de caminho de destino.

          Por exemplo, se o destino do coletor for um tópico do Pub/Sub, o destination vai ser parecido com este:

          pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID
          
  6. No painel Escolha os registros para incluir no coletor, faça o seguinte:

    • Para criar um coletor de interceptação, selecione Interceptar registros ingeridos por esta organização e todos os recursos filhos.

    • Para criar um coletor agregado sem interceptação, selecione Incluir registros ingeridos por este recurso e todos os recursos filhos.

  7. Para concluir a caixa de diálogo, insira uma expressão de filtro no campo Criar filtro de inclusão que corresponda às entradas de registro que você quer incluir. Se você não definir um filtro, todas as entradas de registro do recurso selecionado serão roteadas para o destino.

    Por exemplo, é possível criar um filtro para encaminhar todos os registros de auditoria de acesso a dados para um único bucket do Logging. Esse filtro tem a seguinte aparência:

    LOG_ID("cloudaudit.googleapis.com/data_access") OR LOG_ID("externalaudit.googleapis.com/data_access")
    

    Para conferir exemplos de filtros, consulte Criar filtros para coletores agregados.

    O comprimento de um filtro não pode exceder 20.000 caracteres.

  8. Opcional: para verificar se você inseriu o filtro correto, selecione Visualizar registros. Isso abre o Explorador de registros em uma nova guia com o filtro pré-preenchido.

  9. Opcional: no painel Escolher registros a serem excluídos do coletor, faça o seguinte:

    1. No campo Nome do filtro de exclusão, insira um nome.

    2. No campo Criar um filtro de exclusão, insira uma expressão de filtro que corresponda às entradas de registro que você quer excluir. Também é possível usar a função sample para selecionar uma parte das entradas de registro a serem excluídas.

      Por exemplo, para impedir que as entradas de registro de um projeto específico sejam roteadas para o destino, adicione o seguinte filtro de exclusão:

      logName:projects/PROJECT_ID
      

      Para excluir entradas de registro de vários projetos, use o operador lógico OR para unir cláusulas logName.

    É possível criar até 50 filtros de exclusão por coletor. O comprimento de um filtro não pode exceder 20.000 caracteres.

  10. Selecione Criar coletor.

  11. Conceda à conta de serviço do coletor a permissão para gravar entradas de registro no destino do coletor. Para mais informações, consulte Definir permissões de destino.

gcloud

Para criar um coletor agregado, use o comando logging sinks create:

  1. Para criar um coletor, chame o comando gcloud logging sinks create e inclua a opção --include-children.

    Antes de usar o comando a seguir, faça as seguintes substituições:

    • SINK_NAME: o nome do coletor de registros. Não é possível mudar o nome de uma sink depois de criá-la.
    • SINK_DESTINATION: o serviço ou projeto para onde você quer que as entradas de registro sejam roteadas.
    • INCLUSION_FILTER: o filtro de inclusão de um coletor. Para conferir exemplos de filtros, consulte Criar filtros para coletores agregados.
    • FOLDER_ID: o ID da pasta. Se você quiser criar um coletor no nível da organização, substitua --folder=FOLDER_ID por -- organization=ORGANIZATION_ID.

    Execute o comando gcloud logging sinks create:

    gcloud logging sinks create SINK_NAME \
      SINK_DESTINATION  --include-children \
      --folder=FOLDER_ID --log-filter="INCLUSION_FILTER"
    

    Também é possível fornecer as seguintes opções:

    • Para criar um coletor de interceptação, inclua a opção --intercept-children.

    Por exemplo, se você estiver criando um coletor agregado no nível da pasta e cujo destino for um tópico do Pub/Sub, o comando poderá ter a seguinte aparência:

    gcloud logging sinks create SINK_NAME \
      pubsub.googleapis.com/projects/PROJECT_ID/topics/TOPIC_ID --include-children \
      --folder=FOLDER_ID --log-filter="logName:activity"
  2. Conceda à conta de serviço a permissão para gravar no destino do coletor. Para mais informações, consulte Definir permissões de destino.

REST

Para criar um coletor agregado, use o método organizations.sinks.create ou folders.sinks.create da API Logging. Prepare os argumentos do método da seguinte maneira:

  1. Defina o campo parent como a organização ou pasta do Google Cloud em que o coletor será criado. O pai precisa ser um dos seguintes parâmetros:

    • organizations/ORGANIZATION_ID
    • folders/FOLDER_ID
  2. No objeto LogSink no corpo da solicitação do método, faça o seguinte:

    • Defina includeChildren como True.

    • Para criar um coletor de interceptação, defina o campo interceptChildren como True.

  3. Defina o campo filter para corresponder às entradas de registro que você quer incluir.

    Para conferir exemplos de filtros, consulte Criar filtros para coletores agregados.

    O comprimento de um filtro não pode exceder 20.000 caracteres.

  4. Defina os campos restantes do LogSink como faria para qualquer coletor. Para mais informações, consulte Rotear registros para destinos compatíveis.

  5. Chame organizations.sinks.create ou folders.sinks.create para criar o coletor.

  6. Conceda à conta de serviço a permissão para gravar no destino do coletor. Para mais informações, consulte Definir permissões de destino.

Qualquer mudança feita em uma sink pode levar alguns minutos para ser aplicada.

Criar filtros para coletores agregados

Como qualquer outro, o coletor agregado contém um filtro que seleciona entradas de registro individuais. Para exemplos de filtros que você pode usar para criar um coletor agregado, consulte Consultas de amostra usando o Explorador de registros.

Veja a seguir alguns exemplos de comparações de filtros que são úteis ao usar o recurso de coletores agregados. Alguns exemplos utilizam a seguinte notação:

  • :: é o operador de substring. Não substitua o operador =.
  • ... representa qualquer comparação de filtros adicional.
  • As variáveis são indicadas por texto colorido. As substitua por valores válidos.

O comprimento de um filtro não pode exceder 20.000 caracteres.

Para mais detalhes sobre a sintaxe da filtragem, consulte Linguagem de consulta do Logging.

Selecionar a origem do registro

Para um coletor agregado, em cada recurso filho da organização ou pasta, os filtros de inclusão e exclusão do coletor são aplicados a cada entrada de registro que é enviada ao recurso filho. Uma entrada de registro que corresponde ao filtro de inclusão e que não é excluída é roteada.

Se você quiser que o coletor roteie entradas de registro de todos os recursos filhos, não especifique um projeto, uma pasta ou uma organização nos filtros de inclusão e exclusão do coletor. Por exemplo, suponha que você configure um coletor agregado para uma organização com o seguinte filtro:

resource.type="gce_instance"

Com o filtro anterior, as entradas de registro com um tipo de recurso de instâncias do Compute Engine gravadas em qualquer criança dessa organização são roteadas pelo sink agregado para o destino.

No entanto, pode haver situações em que você queira usar um coletor agregado para encaminhar entradas de registro apenas de recursos filhos específicos. Por exemplo, por motivos de conformidade, você pode armazenar registros de auditoria de pastas ou projetos específicos no bucket do Cloud Storage deles. Nessas situações, configure o filtro de inclusão para especificar cada recurso filho com as entradas de registro que você quer encaminhar. Se você quiser encaminhar entradas de registro de uma pasta e de todos os projetos dentro dela, o filtro precisará listar a pasta e cada um dos projetos contidos nela, além de juntar as instruções com uma cláusula OR.

Os filtros a seguir restringem as entradas de registro a projetos, pastas ou organizações específicos do Google Cloud:

logName:"projects/PROJECT_ID/logs/" AND ... 
logName:("projects/PROJECT_A_ID/logs/" OR "projects/PROJECT_B_ID/logs/") AND ... 
logName:"folders/FOLDER_ID/logs/" AND ... 
logName:"organizations/ORGANIZATION_ID/logs/" AND ... 

Por exemplo, para rotear apenas as entradas de registro gravadas em instâncias do Compute Engine que foram gravadas na pasta my-folder, use o seguinte filtro:

logName:"folders/my-folder/logs/" AND resource.type="gce_instance"

Com o filtro anterior, as entradas de registro gravadas em qualquer recurso, exceto my-folder, incluindo as entradas de registro gravadas em projetos do Google Cloud que são filhas de my-folder, não são roteadas para o destino.

Selecione o recurso monitorado.

Para rotear entradas de registro de apenas um recurso monitorado específico em um projeto do Google Cloud, use várias comparações para especificar o recurso exatamente:

logName:"projects/PROJECT_ID/logs" AND
resource.type=RESOURCE_TYPE AND
resource.labels.instance_id=INSTANCE_ID

Para uma lista de tipos de recursos, consulte Tipos de recursos monitorados.

Selecione uma amostra de entradas de registro

Para encaminhar uma amostra aleatória de entradas de registro, adicione a função incorporada sample. Por exemplo, para rotear somente 10% das entradas de registro correspondentes ao seu filtro atual, use esta adição:

sample(insertId, 0.10) AND ...

Para mais informações, consulte a função sample.

Para mais informações sobre os filtros do Cloud Logging, consulte Linguagem de consulta do Logging.

Definir permissões de destino

Esta seção descreve como conceder ao Logging as permissões de Identity and Access Management para gravar entradas de registro no destino do coletor. Para a lista de papéis e permissões do Logging, consulte Controle de acesso.

Quando você cria ou atualiza um coletor que encaminha entradas de registro para qualquer destino, exceto um bucket de registros no projeto atual, é necessária uma conta de serviço para esse coletor. A geração de registros cria e gerencia automaticamente a conta de serviço para você:

  • A partir de 22 de maio de 2023, quando você criar um coletor e nenhuma conta de serviço para o recurso subjacente existir, o Logging vai criar a conta de serviço. O registro usa a mesma conta de serviço para todos os destinos no recurso subjacente. Os recursos podem ser um projeto do Google Cloud, uma organização, uma pasta ou uma conta de faturamento.
  • Antes de 22 de maio de 2023, o Logging criava uma conta de serviço para cada coletor. Desde 22 de maio de 2023, o Logging usa uma conta de serviço compartilhada para todos os destinos no recurso.

A identidade do gravador de uma sink é o identificador da conta de serviço associada a ela. Todos os coletores têm uma identidade de gravador, a menos que escrevam em um bucket de registros no projeto atual do Google Cloud.

Para rotear entradas de registro para um recurso protegido por um perímetro de serviço, adicione a conta de serviço desse coletor a um nível de acesso e atribua-a ao perímetro de serviço de destino. Isso não é necessário para coletores não agregados. Para detalhes, consulte VPC Service Controls: Cloud Logging.

Para definir permissões a fim de rotear o coletor para o destino, faça o seguinte:

Console

  1. Para receber informações sobre a conta de serviço do sink, faça o seguinte:

    1. No Console do Google Cloud, acesse a página Roteador de registros:

      Acessar o roteador de registros

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

    2. Selecione Menu e, depois, Ver detalhes do coletor. A identidade do gravador aparece no painel Detalhes do coletor.

    3. Se o valor do campo writerIdentity contiver um endereço de e-mail, prossiga para a próxima etapa. Quando o valor é None, não é preciso configurar as permissões de destino.

    4. Copie a identidade do gravador do coletor para a área de transferência. A string serviceAccount: faz parte da identidade da conta de serviço. Exemplo:

      serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
      
    5. Adicione a conta de serviço como um titular do IAM no projeto de destino:

      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 de destino.

      3. Clique em CONCEDER ACESSO.

      4. Conceda à conta de serviço o papel do IAM necessário:

        • Para destinos do Cloud Storage, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel de criador de objetos do Storage (roles/storage.objectCreator).
        • Para destinos do BigQuery, adicione a identidade do gravador do coletor como um principal usando o IAM e conceda a ele a função de editor de dados do BigQuery (roles/bigquery.dataEditor).
        • Para destinos do Pub/Sub, incluindo o Splunk, adicione a identidade do gravador do coletor como uma conta principal usando o IAM e conceda a função de editor do Pub/Sub (roles/pubsub.publisher).
        • Para destinos de bucket do Logging em diferentes projetos do Google Cloud, adicione a identidade de gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador do bucket de registros (roles/logging.bucketWriter).
        • Para destinos de projetos do Google Cloud, adicione a identidade do gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de registros (roles/logging.logWriter). Especificamente, um principal precisa da permissão logging.logEntries.route.

gcloud

  1. Verifique se você tem acesso de proprietário no projeto do Google Cloud que contém o destino. Se você não tiver acesso de proprietário ao destino do coletor, peça a um proprietário do projeto para adicionar a identidade do gravador como principal.

  2. Para receber informações sobre a conta de serviço do sink, chame o método gcloud logging sinks describe.

    Antes de usar o comando a seguir, faça as seguintes substituições:

    • SINK_NAME: o nome do coletor de registros. Não é possível mudar o nome de uma sink depois de criá-la.

    Execute o comando gcloud logging sinks describe:

    gcloud logging sinks describe SINK_NAME
    
  3. Se os detalhes do sink contiverem um campo com a etiqueta writerIdentity, prossiga para a próxima etapa. Quando os detalhes não incluem um campo writerIdentity, não é necessário configurar as permissões de destino para o coletor.

  4. Copie a identidade do gravador do coletor para a área de transferência. A string serviceAccount: faz parte da identidade da conta de serviço.

    A identidade do gravador para a conta de serviço é semelhante a esta:

    serviceAccount:service-123456789012@gcp-sa-logging.iam.gserviceaccount.com
    
  5. Para adicionar a conta de serviço como um principal do IAM no projeto de destino, chame o comando gcloud projects add-iam-policy-binding.

    Antes de usar o comando a seguir, faça as seguintes substituições:

    • PROJECT_ID: o identificador do projeto.
    • PRINCIPAL: um identificador do principal a quem você quer conceder o papel. Os identificadores dos principais geralmente têm o seguinte formato: PRINCIPAL-TYPE:ID. Por exemplo, user:my-user@example.com. Para uma lista completa dos formatos que PRINCIPAL pode ter, consulte Identificadores principais.
    • ROLE: um papel do IAM.

      • Para destinos do Cloud Storage, adicione a identidade do gravador do coletor como principal usando o IAM e conceda o papel de criador de objetos do Storage (roles/storage.objectCreator).
      • Para destinos do BigQuery, adicione a identidade do gravador do coletor como um principal usando o IAM e conceda a ele o papel de editor de dados do BigQuery (roles/bigquery.dataEditor).
      • Para destinos do Pub/Sub, incluindo o Splunk, adicione a identidade do gravador do coletor como uma conta principal usando o IAM e conceda a função de editor do Pub/Sub (roles/pubsub.publisher).
      • Para destinos de bucket do Logging em diferentes projetos do Google Cloud, adicione a identidade de gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de bucket de registros (roles/logging.bucketWriter).
      • Para destinos de projetos do Google Cloud, adicione a identidade do gravador do coletor como principal usando o IAM e conceda a ele o papel de gravador de registros (roles/logging.logWriter). Especificamente, um principal precisa da permissão logging.logEntries.route.

    Execute o comando gcloud projects add-iam-policy-binding:

    gcloud projects add-iam-policy-binding PROJECT_ID --member=PRINCIPAL --role=ROLE
    

REST

Recomendamos que você use o console do Google Cloud ou a Google Cloud CLI para conceder um papel à conta de serviço.

A seguir