Recolha registos do AWS CloudWatch

Compatível com:

Este documento explica como carregar registos do AWS CloudWatch para o Google Security Operations. O AWS CloudWatch é um serviço de monitorização e observabilidade que recolhe dados operacionais sob a forma de registos, métricas e eventos. Esta integração permite-lhe enviar estes registos para o Google SecOps para análise e monitorização.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps
  • Acesso privilegiado ao AWS

Crie um contentor do Amazon S3

Recomendamos que use um contentor criado especificamente para registos do CloudWatch.

  1. Abra a consola do Amazon S3.
  2. Se necessário, pode alterar a Região.
    • Na barra de navegação, selecione a região onde residem os seus registos do CloudWatch.
  3. Clique em Criar contentor.
    • Nome do contentor: introduza um nome significativo para o contentor.
    • Região: selecione a região onde residem os seus dados do CloudWatch Logs.
    • Clique em Criar.

Crie um utilizador do IAM com acesso total ao Amazon S3 e aos registos do CloudWatch

  1. Abra a consola do IAM.
  2. Clique em Utilizadores > Adicionar utilizador.
  3. Introduza um nome de utilizador (por exemplo, CWExport).
  4. Selecione Acesso programático e Acesso à AWS Management Console.
  5. Selecione Palavra-passe gerada automaticamente ou Palavra-passe personalizada.
  6. Clique em Seguinte > Autorizações.
  7. Escolha Anexar políticas existentes diretamente.
  8. Pesquise e selecione as políticas AmazonS3FullAccess e CloudWatchLogsFullAccess para o utilizador.
  9. Clique em Seguinte > Etiquetas.
  10. Clique em Seguinte > Rever.
  11. Clique em Criar utilizador.

Configure autorizações no contentor do Amazon S3

  1. Na consola do Amazon S3, escolha o contentor que criou anteriormente.
  2. Clique em Autorizações > Política do contentor.
  3. No Editor de políticas de contentores, adicione a seguinte política:

    {             
      "Version": "2012-10-17",
      "Statement": [
          {
            "Action": "s3:GetBucketAcl",
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::cw-exported-logs",
            "Principal": { "Service": "logs.us-east-1.amazonaws.com" }
          },
          {
            "Action": "s3:PutObject" ,
            "Effect": "Allow",
            "Resource": "arn:aws:s3:::my-exported-logs/random-string/*",
            "Condition": { "StringEquals": { "s3:x-amz-acl": "bucket-owner-full-control" } },
            "Principal": { "Service": "logs.us-east-1.amazonaws.com" }
    
          }
    
      ]
    
    }
    
  4. Altere e atualize as seguintes variáveis json:

    • Altere cw-exported-logs para o nome do seu contentor do S3.
    • Altere random-string para uma string de carateres gerada aleatoriamente.
    • Especifique o ponto final da região correto para Principal.
  5. Clique em Guardar para definir a política que acabou de adicionar como a política de acesso no seu contentor.

Como configurar a exportação do CloudWatch

  1. Inicie sessão como o utilizador do IAM que criou anteriormente.
  2. Abra a consola do CloudWatch.
  3. No menu de navegação, selecione Grupos de registos.
  4. Selecione o nome de um grupo de registos existente ou crie um novo grupo de registos.
  5. Escolha Ações > Exportar dados para o Amazon S3.
  6. No ecrã Exporte dados para o Amazon S3, localize Definir exportação de dados.
  7. Defina o intervalo de tempo dos dados a exportar através das opções De e Para. A exportação só é realizada durante este período. Se procura um envio contínuo, recomendamos que use uma ferramenta como o Firehose.

  8. Escolher contentor do S3: selecione a conta associada ao contentor do Amazon S3.

  9. Nome do contentor do S3: selecione um contentor do Amazon S3.

  10. Prefixo do contentor do S3: introduza a string gerada aleatoriamente que especificou na política do contentor.

  11. Escolha Exportar para exportar os dados de registo para o Amazon S3.

  12. Para ver o estado dos dados de registo que exportou para o Amazon S3, selecione Ações > Ver todas as exportações para o Amazon S3.

Configure feeds

Existem dois pontos de entrada diferentes para configurar feeds na plataforma Google SecOps:

  • Definições do SIEM > Feeds > Adicionar novo
  • Content Hub > Pacotes de conteúdo > Começar

Como configurar o feed do AWS CloudWatch

  1. Clique no pacote Amazon Cloud Platform.
  2. No tipo de registo AWS CloudWatch, especifique os seguintes valores:
  3. Especifique valores para os seguintes campos:

    • Tipo de origem: Amazon SQS V2
    • Nome da fila: o nome da fila SQS a partir da qual ler
    • URI do S3: o URI do contentor.
      • s3://your-log-bucket-name/
        • Substitua your-log-bucket-name pelo nome real do seu contentor do S3.
    • Opções de eliminação de origens: selecione a opção de eliminação de acordo com as suas preferências de carregamento.

    • Idade máxima do ficheiro: inclua ficheiros modificados no último número de dias. A predefinição é 180 dias.

    • ID da chave de acesso à fila SQS: uma chave de acesso à conta que é uma string alfanumérica de 20 carateres.

    • Chave de acesso secreta da fila SQS: uma chave de acesso à conta que é uma string alfanumérica de 40 carateres.

    Opções avançadas

    • Nome do feed: um valor pré-preenchido que identifica o feed.
    • Espaço de nomes do recurso: espaço de nomes associado ao feed.
    • Etiquetas de carregamento: etiquetas aplicadas a todos os eventos deste feed.
  4. Clique em Criar feed.

Para mais informações sobre a configuração de vários feeds para diferentes tipos de registos nesta família de produtos, consulte o artigo Configure feeds por produto.

Tabela de mapeamento do UDM

Campo de registo Mapeamento de UDM Lógica
account principal.user.userid O valor de account do registo não processado é mapeado para o campo principal.user.userid.
account_id principal.user.userid O valor de account_id do registo não processado é mapeado para o campo principal.user.userid.
AlertId metadata.product_log_id O valor de AlertId do registo não processado é mapeado para o campo metadata.product_log_id.
arrivalTimestamp metadata.event_timestamp O valor de arrivalTimestamp do registo não processado é convertido numa indicação de tempo e mapeado para o campo metadata.event_timestamp.
attemptsMade additional.fields O valor de attemptsMade do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "Tentativas feitas".
awsAccountId principal.asset_id O valor de awsAccountId do registo não processado tem o prefixo "ID da conta da AWS: " e é mapeado para o campo principal.asset_id.
billed_duration additional.fields O valor de billed_duration do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "billed_duration".
BytesIn network.received_bytes O valor de BytesIn do registo não processado é convertido num número inteiro sem sinal e mapeado para o campo network.received_bytes.
cipher network.tls.cipher O valor de cipher do registo não processado é mapeado para o campo network.tls.cipher.
Ciphers network.tls.client.supported_ciphers O valor de Ciphers do registo não processado é dividido por vírgulas e cada valor é adicionado à matriz network.tls.client.supported_ciphers.
cloudwatchLog security_result.description O valor de cloudwatchLog do registo não processado é mapeado para o campo security_result.description.
CloudAccountId metadata.product_deployment_id O valor de CloudAccountId do registo não processado é mapeado para o campo metadata.product_deployment_id.
CloudType target.resource.attribute.cloud.environment O valor de CloudType do registo não processado determina o valor de target.resource.attribute.cloud.environment. Se CloudType for "Google Cloud", o valor é "GOOGLE_CLOUD_PLATFORM". Se CloudType for "aws", o valor é "AMAZON_WEB_SERVICES". Se CloudType for "azure", o valor é "MICROSOFT_AZURE".
Context.Execution.Id target.resource.attribute.labels O valor de Context.Execution.Id do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "ID do contexto".
Context.Execution.Name target.resource.attribute.labels O valor de Context.Execution.Name do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "Nome do contexto".
Context.Execution.RoleArn target.resource.product_object_id O valor de Context.Execution.RoleArn do registo não processado é mapeado para o campo target.resource.product_object_id.
descr metadata.description O valor de descr do registo não processado, após a remoção dos espaços em branco adicionais, é mapeado para o campo metadata.description, a menos que seja "-". Se descr estiver vazio, é usado o valor de log.
destination.name target.location.country_or_region O valor de destination.name do registo não processado é mapeado para o campo target.location.country_or_region.
destination.properties.prefix target.resource.attribute.labels O valor de destination.properties.prefix do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "Prefixo das propriedades de destino".
detail.additionalEventData.configRuleArn security_result.rule_id O valor de detail.additionalEventData.configRuleArn do registo não processado é mapeado para o campo security_result.rule_id.
detail.additionalEventData.configRuleName security_result.rule_name O valor de detail.additionalEventData.configRuleName do registo não processado é mapeado para o campo security_result.rule_name.
detail.additionalEventData.managedRuleIdentifier additional.fields O valor de detail.additionalEventData.managedRuleIdentifier do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "managedRuleIdentifier".
detail.additionalEventData.notificationJobType additional.fields O valor de detail.additionalEventData.notificationJobType do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "notificationJobType".
detail.awsAccountId principal.asset_id O valor de detail.awsAccountId do registo não processado tem o prefixo "ID da conta da AWS: " e é mapeado para o campo principal.asset_id.
detail.awsRegion principal.location.name O valor de detail.awsRegion do registo não processado é mapeado para o campo principal.location.name.
detail.configRuleArn security_result.rule_id O valor de detail.configRuleArn do registo não processado é mapeado para o campo security_result.rule_id.
detail.configRuleName security_result.rule_name O valor de detail.configRuleName do registo não processado é mapeado para o campo security_result.rule_name.
detail.configurationItem.awsAccountId principal.user.userid O valor de detail.configurationItem.awsAccountId do registo não processado é mapeado para o campo principal.user.userid.
detail.configurationItem.awsRegion target.location.country_or_region O valor de detail.configurationItem.awsRegion do registo não processado é mapeado para o campo target.location.country_or_region.
detail.configurationItem.configuration.complianceType security_result.summary O valor de detail.configurationItem.configuration.complianceType do registo não processado é mapeado para o campo security_result.summary.
detail.configurationItem.configuration.targetResourceId target.resource.attribute.labels O valor de detail.configurationItem.configuration.targetResourceId do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "configurationItem configuration targetResourceId".
detail.configurationItem.configuration.targetResourceType target.resource.attribute.labels O valor de detail.configurationItem.configuration.targetResourceType do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "configurationItem configuration targetResourceType".
detail.configurationItem.configurationItemCaptureTime _target.asset.attribute.creation_time O valor de detail.configurationItem.configurationItemCaptureTime do registo não processado é convertido numa indicação de tempo e mapeado para o campo _target.asset.attribute.creation_time.
detail.configurationItem.configurationItemStatus target.resource.attribute.labels O valor de detail.configurationItem.configurationItemStatus do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "configurationItem configurationItemStatus".
detail.configurationItem.configurationStateId target.resource.attribute.labels O valor de detail.configurationItem.configurationStateId do registo não processado é convertido numa string e adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave configurationItem configurationStateId.
detail.configurationItem.resourceId target.resource.id O valor de detail.configurationItem.resourceId do registo não processado é mapeado para o campo target.resource.id.
detail.configurationItem.resourceType target.resource.resource_subtype O valor de detail.configurationItem.resourceType do registo não processado é mapeado para o campo target.resource.resource_subtype.
detail.configurationItemDiff.changedProperties.Configuration.configRuleList.1.updatedValue.configRuleArn security_result.rule_id O valor de detail.configurationItemDiff.changedProperties.Configuration.configRuleList.1.updatedValue.configRuleArn do registo não processado é mapeado para o campo security_result.rule_id.
detail.eventCategory security_result.category_details O valor de detail.eventCategory do registo não processado é mapeado para o campo security_result.category_details.
detail.eventID metadata.product_log_id O valor de detail.eventID do registo não processado é mapeado para o campo metadata.product_log_id.
detail.eventName additional.fields O valor de detail.eventName do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "Nome do evento".
detail.eventSource target.application O valor de detail.eventSource do registo não processado é mapeado para o campo target.application.
detail.eventType additional.fields O valor de detail.eventType do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "Tipo de evento".
detail.eventVersion metadata.product_version O valor de detail.eventVersion do registo não processado é mapeado para o campo metadata.product_version.
detail.managementEvent additional.fields O valor de detail.managementEvent do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "detail managementEvent".
detail.messageType target.resource.attribute.labels O valor de detail.messageType do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "Tipo de mensagem".
detail.newEvaluationResult.complianceType security_result.summary O valor de detail.newEvaluationResult.complianceType do registo não processado é mapeado para o campo security_result.summary.
detail.newEvaluationResult.configRuleInvokedTime additional.fields O valor de detail.newEvaluationResult.configRuleInvokedTime do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "newEvaluationResult_configRuleInvokedTime".
detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.configRuleName additional.fields O valor de detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.configRuleName do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "newEvaluationResult_configRuleName".
detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceId additional.fields O valor de detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "newEvaluationResult_resourceId".
detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceType additional.fields O valor de detail.newEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceType do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "newEvaluationResult_resourceType".
detail.newEvaluationResult.resultRecordedTime additional.fields O valor de detail.newEvaluationResult.resultRecordedTime do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "newEvaluationResult_resultRecordedTime".
detail.oldEvaluationResult.configRuleInvokedTime additional.fields O valor de detail.oldEvaluationResult.configRuleInvokedTime do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "oldEvaluationResult_configRuleInvokedTime".
detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.configRuleName additional.fields O valor de detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.configRuleName do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave oldEvaluationResult_configRuleName.
detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceId additional.fields O valor de detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "oldEvaluationResult_resourceId".
detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceType additional.fields O valor de detail.oldEvaluationResult.evaluationResultIdentifier.evaluationResultQualifier.resourceType do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "oldEvaluationResult_resourceType".
detail.oldEvaluationResult.resultRecordedTime additional.fields O valor de detail.oldEvaluationResult.resultRecordedTime do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "oldEvaluationResult_resultRecordedTime".
detail.readOnly additional.fields O valor de detail.readOnly do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "detail readOnly".
detail.recipientAccountId target.resource.attribute.labels O valor de detail.recipientAccountId do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "Recipient Account Id".
detail.recordVersion metadata.product_version O valor de detail.recordVersion do registo não processado é mapeado para o campo metadata.product_version.
detail.requestID target.resource.attribute.labels O valor de detail.requestID do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "ID do pedido de detalhes".
detail.resourceType target.resource.resource_subtype O valor de detail.resourceType do registo não processado é mapeado para o campo target.resource.resource_subtype.
detail.s3Bucket about.resource.name O valor de detail.s3Bucket do registo não processado é mapeado para o campo about.resource.name.
detail.s3ObjectKey target.resource.attribute.labels O valor de detail.s3ObjectKey do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "s3ObjectKey".
detail.userAgent network.http.user_agent O valor de detail.userAgent do registo não processado é mapeado para o campo network.http.user_agent.
detail.userIdentity.accessKeyId target.user.userid O valor de detail.userIdentity.accessKeyId do registo não processado é mapeado para o campo target.user.userid.
detail.userIdentity.accountId metadata.product_deployment_id O valor de detail.userIdentity.accountId do registo não processado é mapeado para o campo metadata.product_deployment_id.
detail.userIdentity.arn target.user.userid O valor de detail.userIdentity.arn do registo não processado é mapeado para o campo target.user.userid.
detail.userIdentity.principalId principal.user.product_object_id O valor de detail.userIdentity.principalId do registo não processado é mapeado para o campo principal.user.product_object_id.
detail.userIdentity.sessionContext.attributes.mfaAuthenticated principal.user.attribute.labels O valor de detail.userIdentity.sessionContext.attributes.mfaAuthenticated do registo não processado é adicionado como um par de chave-valor ao principal.user.attribute.labels com a chave "mfaAuthenticated".
detail.userIdentity.sessionContext.sessionIssuer.userName target.user.user_display_name O valor de detail.userIdentity.sessionContext.sessionIssuer.userName do registo não processado é mapeado para o campo target.user.user_display_name.
detail.userIdentity.type principal.resource.type O valor de detail.userIdentity.type do registo não processado é mapeado para o campo principal.resource.type.
detail-type metadata.product_event_type O valor de detail-type do registo não processado é mapeado para o campo metadata.product_event_type.
device principal.asset.product_object_id O valor de device do registo não processado é mapeado para o campo principal.asset.product_object_id.
digestPublicKeyFingerprint target.file.sha1 O valor de digestPublicKeyFingerprint do registo não processado é mapeado para o campo target.file.sha1.
digestS3Bucket principal.resource.name O valor de digestS3Bucket do registo não processado é mapeado para o campo principal.resource.name.
digestS3Object principal.asset.asset_id O valor de digestS3Object do registo não processado é precedido de "S3 Object: " e mapeado para o campo principal.asset.asset_id.
digestSignatureAlgorithm network.tls.cipher O valor de digestSignatureAlgorithm do registo não processado é mapeado para o campo network.tls.cipher.
digestStartTime metadata.event_timestamp O valor de digestStartTime do registo não processado é convertido numa indicação de tempo e mapeado para o campo metadata.event_timestamp.
dimensions.VolumeId additional.fields O valor de dimensions.VolumeId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "VolumeId".
duration additional.fields O valor de duration do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "duration".
errorCode security_result.rule_name O valor de errorCode do registo não processado é mapeado para o campo security_result.rule_name.
errorMessage security_result.summary O valor de errorMessage do registo não processado é mapeado para o campo security_result.summary.
executionId principal.process.pid O valor de executionId do registo não processado é mapeado para o campo principal.process.pid.
host principal.hostname, principal.ip O valor de host do registo não processado, com os hífenes substituídos por pontos, é analisado como um endereço IP e mapeado para o campo principal.ip se for bem-sucedido. Caso contrário, é mapeado para o campo principal.hostname.
http_verb network.http.method O valor de http_verb do registo não processado é convertido em maiúsculas e mapeado para o campo network.http.method.
kubernetes.container_hash additional.fields O valor de kubernetes.container_hash do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "container_hash".
kubernetes.container_image additional.fields O valor de kubernetes.container_image do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "container_image".
kubernetes.container_name additional.fields O valor de kubernetes.container_name do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "container_name".
kubernetes.docker_id principal.asset_id O valor de kubernetes.docker_id do registo não processado tem "id: " adicionado no início e é mapeado para o campo principal.asset_id.
kubernetes.host principal.hostname, principal.ip O valor de kubernetes.host do registo não processado, com os hífenes substituídos por pontos, é analisado como um endereço IP e mapeado para o campo principal.ip se for bem-sucedido. Caso contrário, é mapeado para o campo principal.hostname.
kubernetes.namespace principal.namespace O valor de kubernetes.namespace do registo não processado é mapeado para o campo principal.namespace.
kubernetes.namespace_name principal.namespace O valor de kubernetes.namespace_name do registo não processado é mapeado para o campo principal.namespace.
kubernetes.pod_id principal.asset.asset_id O valor de kubernetes.pod_id do registo não processado tem o prefixo "pod_id: " e é mapeado para o campo principal.asset.asset_id.
kubernetes.pod_name additional.fields O valor de kubernetes.pod_name do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "nome do podcast".
lambdaArn principal.hostname O valor de lambdaArn do registo não processado é mapeado para o campo principal.hostname.
level security_result.severity O valor de level do registo não processado determina o valor de security_result.severity. Se level for "Info", o valor é "INFORMATIONAL". Se level for "Error", o valor é "ERROR". Se level for "Warning", o valor é "MEDIUM".
log metadata.description O valor de log do registo não processado é mapeado para o campo metadata.description se descr estiver vazio.
logFiles about Para cada elemento na matriz logFiles do registo não processado, é criado um objeto about com file.full_path definido como s3Object, asset.hostname definido como s3Bucket e file.sha256 definido como hashValue.
log_processed.cause security_result.summary O valor de log_processed.cause do registo não processado é mapeado para o campo security_result.summary.
log_processed.ids intermediary.hostname Para cada elemento na matriz log_processed.ids do registo não processado, é criado um objeto intermediary com hostname definido como o valor do elemento.
log_processed.level security_result.severity O valor de log_processed.level do registo não processado é mapeado para o campo security_result.severity.
log_processed.msg metadata.description O valor de log_processed.msg do registo não processado é mapeado para o campo metadata.description.
log_processed.ts metadata.event_timestamp O valor de log_processed.ts do registo não processado é convertido numa indicação de tempo e mapeado para o campo metadata.event_timestamp.
log_type metadata.log_type O valor de log_type do registo não processado é mapeado para o campo metadata.log_type. Este é um campo personalizado adicionado para contexto.
logevent.message security_result.description O valor de logevent.message do registo não processado é mapeado para o campo security_result.description. Também é analisado através do grok para extrair campos adicionais.
logGroup security_result.about.resource.name O valor de logGroup do registo não processado é mapeado para o campo security_result.about.resource.name.
logStream security_result.about.resource.attribute.labels O valor de logStream do registo não processado é adicionado como um par de chave-valor ao security_result.about.resource.attribute.labels com a chave "logStream".
memory_used additional.fields O valor de memory_used do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "memory_used".
metric_name additional.fields O valor de metric_name do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "metric_name".
metric_stream_name additional.fields O valor de metric_stream_name do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "metric_stream_name".
namespace principal.namespace O valor de namespace do registo não processado é mapeado para o campo principal.namespace.
owner principal.user.userid O valor de owner do registo não processado é mapeado para o campo principal.user.userid.
parameters additional.fields O valor de parameters do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "Parameters".
Path principal.process.file.full_path O valor de Path do registo não processado é mapeado para o campo principal.process.file.full_path.
pid principal.process.pid O valor de pid do registo não processado é mapeado para o campo principal.process.pid.
PolicyName security_result.rule_name O valor de PolicyName do registo não processado é mapeado para o campo security_result.rule_name.
prin_host principal.hostname O valor de prin_host do registo não processado é mapeado para o campo principal.hostname.
principal_hostname principal.hostname O valor de principal_hostname do registo não processado é mapeado para o campo principal.hostname.
process principal.application O valor de process do registo não processado é mapeado para o campo principal.application.
rawData additional.fields O valor de rawData do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "Dados não processados".
Recommendation security_result.detection_fields O valor de Recommendation do registo não processado é adicionado como um par de chave-valor ao security_result.detection_fields com a chave "Recommendation".
referral_url network.http.referral_url O valor de referral_url do registo não processado é mapeado para o campo network.http.referral_url.
region principal.location.name O valor de region do registo não processado é mapeado para o campo principal.location.name.
resp_code network.http.response_code O valor de resp_code do registo não processado é convertido num número inteiro e mapeado para o campo network.http.response_code.
resource_url network.http.referral_url O valor de resource_url do registo não processado é mapeado para o campo network.http.referral_url.
ResourceType target.resource.resource_subtype O valor de ResourceType do registo não processado é mapeado para o campo target.resource.resource_subtype.
response_body additional.fields O valor de response_body do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "Corpo da resposta".
Role target.resource.product_object_id O valor de Role do registo não processado é mapeado para o campo target.resource.product_object_id.
s3_bucket_path target.file.full_path O valor de s3_bucket_path do registo não processado é mapeado para o campo target.file.full_path.
sec_result.category security_result.category O valor de sec_result.category é derivado da lógica do analisador. Se descr contiver "authentication is required", o valor é "AUTH_VIOLATION".
sec_result.description security_result.description O valor de sec_result.description é derivado da lógica do analisador. É definido como o valor de cloudwatchLog, se estiver presente.
sec_result.severity security_result.severity O valor de sec_result.severity é derivado da lógica do analisador. É definido com base no valor de severity ou level.
sec_result.summary security_result.summary O valor de sec_result.summary é derivado da lógica do analisador. Está definido para o valor de log_processed.cause ou errorMessage, se estiver presente.
security_result security_result O objeto security_result é construído a partir de vários campos e lógica de análise.
serverId additional.fields O valor de serverId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "server_id".
severity security_result.severity O valor de severity do registo não processado, convertido em maiúsculas e normalizado, é mapeado para o campo security_result.severity.
Source principal.hostname O valor de Source do registo não processado é mapeado para o campo principal.hostname.
source principal.hostname O valor de source do registo não processado é mapeado para o campo principal.hostname.
SourceIP principal.ip O valor de SourceIP do registo não processado é mapeado para o campo principal.ip.
src_port principal.port Se src_port for "80", é convertido num número inteiro e mapeado para o campo principal.port, e network.application_protocol é definido como "HTTP".
stream additional.fields O valor de stream do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "stream".
subscriptionFilters security_result.about.resource.attribute.labels Para cada elemento na matriz subscriptionFilters do registo não processado, é adicionado um par de chave-valor ao security_result.about.resource.attribute.labels com a chave "subscriptionFilter" e o valor da matriz.
support_contact target.resource.attribute.labels O valor de support_contact do registo não processado é adicionado como um par de chave-valor ao target.resource.attribute.labels com a chave "Contacto de apoio técnico".
t_ip target.ip O valor de t_ip do registo não processado, após a remoção dos hífens, é analisado como um endereço IP e mapeado para o campo target.ip se for bem-sucedido.
time metadata.event_timestamp O valor de time do registo não processado é convertido numa indicação de tempo e mapeado para o campo metadata.event_timestamp.
timestamp metadata.event_timestamp O valor de timestamp do registo não processado é convertido numa data/hora através de vários formatos e mapeado para o campo metadata.event_timestamp.
tls network.tls.version O valor de tls do registo não processado é mapeado para o campo network.tls.version.
transferDetails.serverId additional.fields O valor de transferDetails.serverId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "server_id".
transferDetails.sessionId network.session_id O valor de transferDetails.sessionId do registo não processado é mapeado para o campo network.session_id.
transferDetails.username principal.user.user_display_name O valor de transferDetails.username do registo não processado é mapeado para o campo principal.user.user_display_name.
ts metadata.event_timestamp O valor de ts do registo não processado, combinado com o fuso horário, se disponível, é convertido numa data/hora e mapeado para o campo metadata.event_timestamp.
type metadata.product_event_type O valor de type do registo não processado é mapeado para o campo metadata.product_event_type.
unit additional.fields O valor de unit do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "unit".
url target.url O valor de url do registo não processado é mapeado para o campo target.url.
url_back_to_product metadata.url_back_to_product O valor de url_back_to_product do registo não processado é mapeado para o campo metadata.url_back_to_product.
User principal.user.userid O valor de User do registo não processado é mapeado para o campo principal.user.userid.
user target.user.userid, metadata.event_type, extensions.auth.mechanism Se user estiver presente, metadata.event_type é definido como "USER_LOGIN", extensions.auth.mechanism é definido como "NETWORK" e o valor de user é mapeado para target.user.userid.
value.count additional.fields O valor de value.count do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "count".
value.max additional.fields O valor de value.max do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "max".
value.min additional.fields O valor de value.min do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "min".
value.sum additional.fields O valor de value.sum do registo não processado é convertido numa string e adicionado como um par de chave-valor ao additional.fields com a chave "sum".
workflowId additional.fields O valor de workflowId do registo não processado é adicionado como um par de chave-valor ao additional.fields com a chave "workflowId".

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.