Recolha registos do Salesforce

Suportado em:

Este documento explica como carregar registos do Salesforce para o Google Security Operations através de dois métodos: Amazon AppFlow com Amazon S3 ou API de terceiros. O analisador processa os registos nos formatos LEEF, CSV e JSON. Extrai campos, realiza o processamento específico do formato (processamento de pares de chave/valor LEEF, colunas CSV e estruturas JSON), mapeia-os para o UDM e enriquece os dados com metadados e campos derivados. O analisador também processa vários tipos de eventos do Salesforce, aplicando uma lógica específica para inícios de sessão, fins de sessão e outras ações, categorizando eventos e definindo tipos de eventos do UDM adequados.

Antes de começar

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

  • Uma instância do Google SecOps
  • Acesso privilegiado ao Salesforce (administrador do sistema ou equivalente)

Opção 1: método da API de terceiros

  • Uma licença do Shield Event Monitoring do Salesforce ou um suplemento do Event Monitoring
  • Capacidade de gerar e gerir certificados X.509 e pares de chaves RSA

Opção 2: Amazon AppFlow com o método S3

  • Acesso privilegiado à AWS
  • A sua organização usa a edição Enterprise, Unlimited ou Performance do Salesforce

Nota importante sobre licenciamento: sem a Monitorização de eventos do Salesforce Shield, o acesso à API EventLogFile está limitado a apenas 7 tipos de eventos básicos (Início de sessão, Fim de sessão, Utilização total da API, Registo de violação de CORS, Violação de CSP, Redirecionamentos de nomes de anfitriões, Exceção inesperada do Apex) com um período de retenção de 1 dia. A maioria das organizações sem o Shield deve usar o método do Amazon AppFlow (opção 2).

Opção 1: configure a integração direta da API Salesforce através da API de terceiros (OAuth JWT Bearer)

Este método estabelece uma ligação API direta do Google SecOps ao Salesforce através do fluxo de portador JWT do OAuth 2.0 para autenticação de servidor a servidor.

Pré-requisitos para este método:

  • Uma licença do Shield Event Monitoring do Salesforce ou um suplemento do Event Monitoring (necessário para o acesso abrangente ao EventLogFile)
  • Acesso de administrador do sistema no Salesforce
  • Capacidade de gerar e gerir certificados X.509 e pares de chaves RSA

Gere um par de chaves RSA e um certificado X.509

Precisa de uma chave privada RSA e de um certificado X.509 correspondente para a autenticação de portador JWT.

  1. Gere uma chave privada RSA:

    openssl genrsa -out salesforce_jwt_private.key 2048
    
  2. Gere um pedido de assinatura de certificado (CSR):

    openssl req -new -key salesforce_jwt_private.key -out salesforce_jwt.csr
    
  3. Gere um certificado autoassinado (válido durante 1 ano):

    openssl x509 -req -days 365 -in salesforce_jwt.csr -signkey salesforce_jwt_private.key -out salesforce_jwt.crt
    
  4. Guarde a chave privada em segurança. Precisa dele para a configuração do feed do Google SecOps.

Crie uma app associada do Salesforce com o fluxo de portador de JWT

  1. Inicie sessão no Salesforce como administrador do sistema.
  2. Aceda a Configuração > Apps > Gestor de apps.
  3. Clique em Nova app associada.
  4. Forneça os seguintes detalhes de configuração:
    • Nome da app associada: introduza um nome (por exemplo, Google Security Operations Integration).
    • Nome da API: preenchido automaticamente com base no nome da app associada.
    • Email de contacto: introduza o seu endereço de email.
  5. Na secção API (ativar definições de OAuth):
    • Selecione Ativar definições OAuth.
    • URL de retorno de chamada: introduza https://login.salesforce.com/services/oauth2/callback (não é usado para o fluxo JWT, mas é obrigatório).
    • Selecione Usar assinaturas digitais.
    • Clique em Escolher ficheiro e carregue o certificado X.509 (salesforce_jwt.crt) que gerou anteriormente.
    • Âmbitos do OAuth selecionados: adicione os seguintes âmbitos:
      • Aceda e faça a gestão dos seus dados (API)
      • Realizar pedidos em seu nome em qualquer altura (refresh_token, offline_access)
    • Exigir a extensão da chave de prova para troca de código (PKCE) para fluxos de autorização suportados: desmarque esta opção.
  6. Clique em Guardar.
  7. Clique em Continuar na mensagem de aviso.
  8. Na página de detalhes da app associada, tome nota da chave do consumidor. Este será usado como o emissor de reivindicações JWT no Google SecOps.
  9. Clique em Gerir > Editar políticas.
  10. Na secção Políticas de OAuth:
    • Utilizadores permitidos: selecione Os utilizadores aprovados pelo administrador estão pré-autorizados.
    • Relaxamento de IP: selecione Relaxar restrições de IP.
  11. Clique em Guardar.

Crie e configure um utilizador da integração no Salesforce

  1. Aceda a Configuração > Utilizadores > Utilizadores.
  2. Clique em Novo utilizador.
  3. Forneça os seguintes detalhes de configuração:
    • First Name: introduza Google.
    • Apelido: introduza Google SecOps Integration.
    • Email: introduza um endereço de email.
    • Nome de utilizador: introduza um nome de utilizador exclusivo.
    • Licença de utilizador: selecione Salesforce.
    • Perfil: selecione Administrador do sistema ou crie um perfil personalizado com acesso à API.
  4. Clique em Guardar.
  5. Registe o nome de utilizador exatamente como foi introduzido. Este valor é usado como o assunto das reivindicações JWT no Google SecOps.

Atribua o utilizador da integração à app ligada

  1. Aceda a Configuração > Apps > Apps associadas > Gerir apps associadas.
  2. Clique na app associada Google Security Operations Integration que criou.
  3. Clique em Gerir > Gerir perfis ou Gerir conjuntos de autorizações.
  4. Selecione o perfil ou o conjunto de autorizações atribuído ao utilizador de integração (por exemplo, Administrador do sistema).
  5. Clique em Guardar.

Conceda autorizações de API e de monitorização de eventos ao utilizador de integração

  1. Aceda a Configuração > Utilizadores > Conjuntos de autorizações.
  2. Clique em Novo.
  3. Forneça os seguintes detalhes de configuração:
    • Etiqueta: introduza Event Monitoring API Access.
    • Nome da API: preenchido automaticamente.
  4. Clique em Guardar.
  5. Na página de detalhes do conjunto de autorizações:
    • Clique em Autorizações do sistema.
    • Clique em Edit.
    • Verifique as seguintes autorizações:
      • API ativada
      • Veja ficheiros de registo de eventos
      • Ver todos os dados (opcional, mas recomendado para acesso abrangente)
    • Clique em Guardar.
  6. Clique em Gerir atribuições > Adicionar atribuições.
  7. Selecione o utilizador de integração que criou anteriormente.
  8. Clique em Atribuir > Concluído.

Configure um feed no Google SecOps para carregar registos do Salesforce através da API

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em + Adicionar novo feed.
  3. Na página seguinte, clique em Configurar um único feed.
  4. No campo Nome do feed, introduza um nome para o feed (por exemplo, Salesforce logs).
  5. Selecione API de terceiros como o Tipo de origem.
  6. Selecione Salesforce como o Tipo de registo.
  7. Clicar em Seguinte.
  8. Selecione Concessão de JWT OAuth no menu pendente.
  9. Especifique valores para os seguintes parâmetros de entrada:
    • Ponto final JWT do OAuth: introduza o ponto final do token OAuth do Salesforce:
      • Produção: https://login.salesforce.com/services/oauth2/token
      • Sandbox: https://test.salesforce.com/services/oauth2/token
      • Domínio personalizado: https://yourdomain.my.salesforce.com/services/oauth2/token
    • Emissor de reivindicações JWT: introduza a chave do consumidor da app associada.
    • Assunto das reivindicações JWT: introduza o nome de utilizador do utilizador de integração.
    • Público-alvo de reivindicações JWT: introduza o URL base de início de sessão do Salesforce:
      • Produção: https://login.salesforce.com
      • Sandbox: https://test.salesforce.com
    • Chave privada RSA: cole todo o conteúdo da sua chave privada RSA (salesforce_jwt_private.key), incluindo as linhas -----BEGIN PRIVATE KEY----- e -----END PRIVATE KEY-----.
  10. Especifique parâmetros adicionais:
  11. Clicar em Seguinte.
  12. Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.

Opção 2: configure a exportação de registos do Salesforce através do Amazon AppFlow e do S3

Este método usa o Amazon AppFlow para extrair dados do Salesforce e armazená-los no Amazon S3, que o Google SecOps ingere.

Configure o contentor do AWS S3 e o IAM para o Google SecOps

  1. Crie um contentor do Amazon S3 seguindo este manual do utilizador: Criar um contentor
  2. Guarde o Nome e a Região do contentor para referência futura (por exemplo, salesforce-secops-logs).
  3. Crie um utilizador seguindo este guia do utilizador: criar um utilizador do IAM.
  4. Selecione o utilizador criado.
  5. Selecione o separador Credenciais de segurança.
  6. Clique em Criar chave de acesso na secção Chaves de acesso.
  7. Selecione Serviço de terceiros como o Exemplo de utilização.
  8. Clicar em Seguinte.
  9. Opcional: adicione uma etiqueta de descrição.
  10. Clique em Criar chave de acesso.
  11. Clique em Transferir ficheiro CSV para guardar a chave de acesso e a chave de acesso secreta para referência futura.
  12. Clique em Concluído.
  13. Selecione o separador Autorizações.
  14. Clique em Adicionar autorizações na secção Políticas de autorizações.
  15. Selecione Adicionar autorizações.
  16. Selecione Anexar políticas diretamente.
  17. Pesquise a política AmazonS3FullAccess.
  18. Selecione a política.
  19. Clicar em Seguinte.
  20. Clique em Adicionar autorizações.

Configure o Amazon AppFlow

  1. Abra a consola do Amazon AppFlow.
  2. Clique em Criar fluxo.
  3. Forneça os seguintes detalhes de configuração:
    • Nome do fluxo: introduza um nome (por exemplo, Salesforce-to-S3-SecOps).
    • Descrição do fluxo: descrição opcional.
  4. Clicar em Seguinte.
  5. Para Detalhes da origem:
    • Nome da origem: selecione Salesforce.
    • Escolha a associação do Salesforce: clique em Criar nova associação.
    • É apresentada uma janela de início de sessão do Salesforce. Inicie sessão com as suas credenciais do Salesforce.
    • Conceda acesso quando lhe for pedido.
    • Objeto do Salesforce: selecione o objeto que quer transferir (por exemplo, EventLogFile se tiver a Monitorização de eventos ou outros objetos de auditoria).
  6. Clicar em Seguinte.
  7. Para Detalhes do destino:
    • Nome do destino: selecione Amazon S3.
    • Detalhes do contentor: selecione o contentor do S3 que criou anteriormente.
    • Prefixo do contentor do S3: prefixo opcional (por exemplo, salesforce-logs/).
  8. Clicar em Seguinte.
  9. Para o Acionador de fluxo:
    • Selecione Executar com base numa programação.
    • A partir de: defina a sua hora de início preferencial.
    • Repetições: selecione A cada hora ou Diariamente com base nos seus requisitos.
  10. Clicar em Seguinte.
  11. Para campos de dados do mapa:
    • Selecione Mapear todos os campos diretamente ou pode especificar os campos a mapear.
    • Se fizer o mapeamento manualmente, selecione os campos que quer transferir.
  12. Clicar em Seguinte.
  13. Para Adicionar filtros (opcional):
    • Adicione filtros para limitar os dados transferidos.
  14. Clicar em Seguinte.
  15. Reveja a configuração e clique em Criar fluxo.
  16. Clique em Ativar fluxo para iniciar as transferências agendadas.

Configure um feed no Google SecOps para carregar registos do Salesforce

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em Adicionar novo feed.
  3. Na página seguinte, clique em Configurar um único feed.
  4. No campo Nome do feed, introduza um nome para o feed; por exemplo, Registos do Salesforce.
  5. Selecione Amazon S3 V2 como o Tipo de origem.
  6. Selecione Salesforce como o Tipo de registo.
  7. Clicar em Seguinte.
  8. Especifique valores para os seguintes parâmetros de entrada:

    • URI do S3: o URI do contentor. s3://BUCKET_NAME Substitua o seguinte:
      • BUCKET_NAME: o nome do contentor.
    • Opções de eliminação de origens: selecione a opção de eliminação de acordo com a sua preferência.

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

    • ID da chave de acesso: a chave de acesso do utilizador com acesso ao contentor do S3.

    • Chave de acesso secreta: a chave secreta do utilizador com acesso ao contentor do S3.

  9. Clicar em Seguinte.

  10. Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.

Formatos de registos do Salesforce suportados

O analisador do Salesforce suporta registos nos formatos KV (LEEF) e CSV.

Registos de exemplo do Salesforce suportados

  • KV (LEEF)

    LEEF:1.0|Salesforce|SecurityMonitoring|343.0|Login: Success|cat=SalesforceLoginHistory    devTime=2020-04-23T14:40:38.000+0000    devTimeFormat=yyyy-MM-dd'T'HH:mm:ss.SSSZ    ApiVersion=N/A  Platform=Windows 7  LoginUrl=sanitized.salesforce.com   src=192.0.2.1   usrName=user.sanitized@fakecorp.com attributes.url=https://sanitized.salesforce.com/services/data/v38.0/sobjects/LoginHistory/FAKEID12345   Id=FAKEID12345  LoginType=Remote Access 2.0 Application=Salesforce for Outlook  Browser=N/A
    
  • CSV

    "EVENT_TYPE","TIMESTAMP","REQUEST_ID","ORGANIZATION_ID","USER_ID","RUN_TIME","CPU_TIME","URI","SESSION_KEY","LOGIN_KEY","USER_TYPE","REQUEST_STATUS","DB_TOTAL_TIME","METHOD","MEDIA_TYPE","STATUS_CODE","USER_AGENT","ROWS_PROCESSED","NUMBER_FIELDS","DB_BLOCKS","DB_CPU_TIME","REQUEST_SIZE","RESPONSE_SIZE","ENTITY_NAME","EXCEPTION_MESSAGE","TIMESTAMP_DERIVED","USER_ID_DERIVED","CLIENT_IP","URI_ID_DERIVED"
    "RestApi","20240421120015.367","SLB:sanitized_request_id","00D040000004g6r","005Sv000000CxcD",329,69,"/services/data/v58.0/query","TJestP3qzXKiV/Ud","D/M3fSrc6oTXlmLq","Standard","S",37030739,"GET","application/json;charset=UTF-8",200,9999,840,5,19481,47,10,250361,"EventLogFile",NaN,"2024-04-21T12:00:15.366Z","005Sv000000CxcDIAS","192.0.2.3",NaN
    

Tabela de mapeamento da UDM

Campo de registo Mapeamento da UDM Lógica
Account.Name target.resource.name O valor de Account.Name do registo não processado.
AccountId target.resource.id O valor de AccountId do registo não processado.
Action security_result.description O valor de Action do registo não processado.
AdditionalInfo - Não está mapeado para o objeto IDM.
ApiType target.application O valor de ApiType do registo não processado.
ApiVersion - Não está mapeado para o objeto IDM.
Application principal.application O valor de Application do registo não processado, "Navegador" para LoginAsEvent, "Token JWT de integração" para LoginEvent, "SfdcSiqActivityPlatform" para LoginHistory com objecttype LoginHistory, "N/A" para ApiEvent ou "Navegador" para LoginAsEventStream.
attributes.url target.url O valor de attributes.url do registo não processado ou URLs específicos para vários tipos de eventos do registo não processado.
attributes.type metadata.product_event_type O valor de attributes.type do registo não processado.
AuthSessionId network.session_id O valor de AuthSessionId do registo não processado.
Browser principal.resource.name O valor de Browser do registo não processado ou "Desconhecido" se Browser não estiver disponível no registo não processado e Application for "Estatísticas" ou "Java (Salesforce.com)" para LoginHistory com ApiType como "SOAP Partner" ou "Desconhecido" para LoginHistory com Application como "SfdcSiqActivityPlatform" ou de data.properties.Browser.str para LoginAsEventStream.
Case.Subject target.resource.name O valor de Case.Subject do registo não processado.
CaseId target.resource.id O valor de CaseId do registo não processado.
cat metadata.product_event_type O valor de cat do registo não processado.
City principal.location.city O valor de City do registo não processado ou de LoginGeo.City para LoginHistory.
Client principal.labels O valor de Client do registo não processado, formatado como uma etiqueta.
CLIENT_IP principal.ip, principal.asset.ip O valor de CLIENT_IP do registo não processado.
ClientVersion - Não está mapeado para o objeto IDM.
CipherSuite network.tls.cipher O valor de CipherSuite do registo não processado.
ColumnHeaders principal.labels O valor de ColumnHeaders do registo não processado, formatado como uma etiqueta.
ConnectedAppId principal.labels O valor de ConnectedAppId do registo não processado, formatado como uma etiqueta.
Contact.Name target.resource.name O valor de Contact.Name do registo não processado.
ContactId target.resource.id O valor de ContactId do registo não processado.
Country principal.location.country_or_region O valor de Country a partir do registo não processado ou LoginGeo.Country para LoginHistory.
CreatedByContext principal.user.userid O valor de CreatedByContext do registo não processado.
CreatedById principal.resource.attribute.labels O valor de CreatedById do registo não processado, formatado como uma etiqueta.
CreatedDate metadata.collected_timestamp O valor de CreatedDate do registo não processado ou a data/hora atual, se não estiver disponível.
CPU_TIME target.resource.attribute.labels O valor de CPU_TIME do registo não processado, formatado como uma etiqueta.
data - Contém vários campos que são extraídos e mapeados individualmente.
DATASET_IDS target.resource.name O valor de DATASET_IDS do registo não processado.
DelegatedOrganizationId target.administrative_domain O valor de DelegatedOrganizationId do registo não processado.
DelegatedUsername observer.user.userid O valor de DelegatedUsername do registo não processado.
Description metadata.description O valor de Description do registo não processado.
DevicePlatform principal.resource.type O valor de DevicePlatform do registo não processado, analisado para extrair o tipo de recurso.
Display metadata.description O valor de Display do registo não processado.
DOWNLOAD_FORMAT target.resource.attribute.labels O valor de DOWNLOAD_FORMAT do registo não processado, formatado como uma etiqueta.
Duration target.resource.attribute.labels O valor de Duration do registo não processado, formatado como uma etiqueta.
ENTITY_NAME target.resource.attribute.labels O valor de ENTITY_NAME do registo não processado, formatado como uma etiqueta.
ErrorCode security_result.action O valor de ErrorCode do registo não processado, transformado em ALLOW ou BLOCK.
EventDate timestamp O valor de EventDate do registo não processado ou data.properties.TIMESTAMP_DERIVED.str, se disponível, ou data.properties.TIMESTAMP_DERIVED_FIRST.str, se disponível, ou @timestamp, se disponível, ou created_date, se disponível, ou timestamp, se disponível, ou LoginTime para LoginHistory.
EventIdentifier metadata.product_log_id O valor de EventIdentifier do registo não processado.
EventType metadata.product_event_type O valor de EventType do registo não processado.
Id principal.user.userid O valor de Id do registo não processado ou metadata.product_log_id para SetupAuditTrail e outros eventos.
IdentityUsed principal.user.email_addresses O valor de IdentityUsed do registo não processado.
Lead.Name target.resource.name O valor de Lead.Name do registo não processado.
LeadId target.resource.id O valor de LeadId do registo não processado.
LoginAsCategory - Não está mapeado para o objeto IDM.
LoginGeo.Country principal.location.country_or_region O valor de LoginGeo.Country do registo não processado.
LoginHistoryId - Não está mapeado para o objeto IDM.
LoginKey principal.user.userid, network.session_id O valor de LoginKey a partir do registo não processado ou CreatedByContext para SetupAuditTrail.
LoginTime timestamp O valor de LoginTime do registo não processado.
LoginType security_result.description O valor de LoginType do registo não processado ou "Outra API Apex" para LoginHistory com ApiType como "SOAP Partner" ou "Acesso remoto 2.0" para LoginHistory com Application como "SfdcSiqActivityPlatform".
LoginUrl target.url, principal.url O valor de LoginUrl do registo não processado.
LogFile principal.resource.attribute.labels O valor de LogFile do registo não processado, formatado como uma etiqueta.
LogFileContentType principal.resource.attribute.labels O valor de LogFileContentType do registo não processado, formatado como uma etiqueta.
LogFileLength principal.resource.attribute.labels O valor de LogFileLength do registo não processado, formatado como uma etiqueta.
Message - Não está mapeado para o objeto IDM.
METHOD network.http.method O valor de METHOD do registo não processado.
Name target.application O valor de Name do registo não processado.
NewValue - Usado em conjunto com OldValue para gerar security_result.summary.
NUMBER_FIELDS target.resource.attribute.labels O valor de NUMBER_FIELDS do registo não processado, formatado como uma etiqueta.
OldValue - Usado em conjunto com NewValue para gerar security_result.summary.
Operation security_result.description, target.resource.attribute.labels O valor de Operation a partir do registo não processado ou Display para SetupAuditTrail.
OperationStatus security_result.action O valor de OperationStatus do registo não processado, transformado em ALLOW ou BLOCK.
ORGANIZATION_ID target.administrative_domain O valor de ORGANIZATION_ID do registo não processado.
OsName principal.platform O valor de OsName do registo não processado.
OsVersion principal.platform_version O valor de OsVersion do registo não processado.
Platform principal.platform O valor de Platform do registo não processado ou de data.properties.OsName.str para LightningUriEventStream ou de data.properties.OsName.str para LoginEventStream.
QueriedEntities target.resource.name, principal.labels O valor de QueriedEntities do registo não processado ou component_name para UriEvent e ApiEvent.
Query target.process.command_line, principal.labels O valor de Query do registo não processado.
RecordId target.resource.id O valor de RecordId do registo não processado.
Records principal.labels O valor de Records do registo não processado, formatado como uma etiqueta.
REQUEST_ID metadata.product_log_id, target.resource.product_object_id O valor de REQUEST_ID do registo não processado.
REQUEST_SIZE network.sent_bytes O valor de REQUEST_SIZE do registo não processado.
REQUEST_STATUS security_result.summary O valor de REQUEST_STATUS do registo não processado.
RESPONSE_SIZE network.received_bytes O valor de RESPONSE_SIZE do registo não processado.
RowsProcessed target.resource.attribute.labels O valor de RowsProcessed do registo não processado, formatado como uma etiqueta.
RUN_TIME target.resource.attribute.labels O valor de RUN_TIME do registo não processado, formatado como uma etiqueta.
SamlEntityUrl - Não está mapeado para o objeto IDM.
SdkAppType - Não está mapeado para o objeto IDM.
SdkAppVersion - Não está mapeado para o objeto IDM.
SdkVersion - Não está mapeado para o objeto IDM.
Section security_result.summary O valor de Section do registo não processado.
SessionKey network.session_id O valor de SessionKey do registo não processado.
SessionLevel target.resource.attribute.labels O valor de SessionLevel do registo não processado, formatado como uma etiqueta.
SourceIp principal.ip, principal.asset.ip O valor de SourceIp do registo não processado.
src principal.ip, principal.asset.ip O valor de src do registo não processado.
SsoType target.resource.attribute.labels O valor de SsoType do registo não processado, formatado como uma etiqueta.
STATUS_CODE network.http.response_code O valor de STATUS_CODE do registo não processado.
Status security_result.action, security_result.action_details O valor de Status do registo não processado, transformado em ALLOW ou BLOCK, ou usado como detalhes da ação para LoginEventStream.
Subject target.resource.name O valor de Subject do registo não processado.
TargetUrl - Não está mapeado para o objeto IDM.
TIMESTAMP metadata.collected_timestamp O valor de TIMESTAMP do registo não processado.
TIMESTAMP_DERIVED timestamp O valor de TIMESTAMP_DERIVED do registo não processado.
TlsProtocol network.tls.version_protocol O valor de TlsProtocol do registo não processado.
URI target.url O valor de URI do registo não processado.
USER_AGENT network.http.user_agent O valor de USER_AGENT do registo não processado.
USER_ID principal.user.userid O valor de USER_ID do registo não processado.
USER_ID_DERIVED principal.user.product_object_id, target.resource.attribute.labels O valor de USER_ID_DERIVED do registo não processado.
UserId principal.user.userid O valor de UserId do registo não processado.
USER_TYPE target.resource.attribute.labels O valor de USER_TYPE do registo não processado, formatado como uma etiqueta.
Username principal.user.userid, principal.user.email_addresses, target.user.email_addresses O valor de Username do registo não processado, ou src_email para vários eventos, ou IdentityUsed para IdentityProviderEventStore, ou data.properties.Email.str para Search e SearchAlert, ou data.properties.Username.str para LoginAsEventStream e LoginEventStream.
UserType target.resource.attribute.labels O valor de UserType do registo não processado, formatado como uma etiqueta.
usrName principal.user.userid, principal.user.email_addresses, target.user.email_addresses O valor de usrName do registo não processado.
VerificationMethod target.resource.attribute.labels O valor de VerificationMethod do registo não processado, formatado como uma etiqueta.
Parser Logic metadata.event_type Derivado com base nos campos event_id e operation, ou definido como "USER_LOGIN" para LoginEventStream, "USER_LOGOUT" para Logout e LogoutEvent, "USER_RESOURCE_UPDATE_CONTENT" para vários eventos, "USER_RESOURCE_UPDATE_PERMISSIONS" para PlatformEncryption, "RESOURCE_READ" para QueuedExecution, ApexExecution, LightningInteraction, LightningPerformance, LightningPageView, URI, RestApi, API, AuraRequest, ApexCallout, OneCommerceUsage, Sites, MetadataApiOperation, OneCommerceUsage, VisualforceRequest, Dashboard, Search, ListViewEvent, "RESOURCE_CREATION" para UriEvent e TimeBasedWorkflow com Operation como "Create" ou "INSERT", "RESOURCE_WRITTEN" para UriEvent e LightningUriEvent com Operation como "Update", "RESOURCE_DELETION" para UriEvent com Operation como "Delete" ou "ROLLBACK", "USER_UNCATEGORIZED" para SetupAuditTrail e AuditTrail, "USER_CHANGE_PASSWORD" para SetupAuditTrail com operation como "namedCredentialEncryptedFieldChange", "GENERIC_EVENT" para ApiEventStream e LightningUriEventStream, ou com base na presença de rede e principal.
Parser Logic metadata.ingestion_labels Etiquetas que indicam a origem do evento, "Ficheiro de registo de eventos", "Monitorização de eventos em tempo real" ou "SetupAuditTrail".
Parser Logic metadata.log_type Está sempre definido como "SALESFORCE".
Parser Logic metadata.product_name Está sempre definido como "SALESFORCE".
Parser Logic metadata.vendor_name Está sempre definido como "SALESFORCE".
Parser Logic metadata.url_back_to_product Construído a partir de vários campos, como LoginUrl, attributes.url, data.properties.PageUrl.str e data.properties.LoginUrl.str.
Parser Logic network.application_protocol Definido como "HTTPS" se o campo uri começar por "http".
Parser Logic network.http.referral_url Extraído do campo user_agent se contiver "Referer=".
Parser Logic network.http.response_code Derivados de request_status para vários eventos.
Parser Logic network.http.user_agent O valor de user_agent do registo não processado ou de data.properties.UserAgent.str para ApiEventStream e LoginEventStream, ou de eventos Sites, ou "User-Agent" de eventos Sites.
Parser Logic network.session_id O valor de session_key ou SESSION_KEY do registo não processado ou construído a partir de outros campos, como LoginKey ou AuthSessionId.
Parser Logic network.tls.version O valor de tls_protocol do registo não processado ou de data.properties.TlsProtocol.str para LoginEventStream.
Parser Logic principal.application O valor de application do registo não processado ou "Salesforce for Outlook" para eventos Login: Success, ou "Insights" para eventos Login: Success sem Application, ou extraído de device_platform para eventos Lightning.
Parser Logic principal.asset.hostname O valor de client_ip se for um nome de anfitrião.
Parser Logic principal.asset.ip O valor de client_ip ou src_ip ou SourceIp ou CLIENT_IP, se for um endereço IP.
Parser Logic principal.hostname O valor de client_ip se for um nome de anfitrião.
Parser Logic principal.ip O valor de client_ip ou src_ip ou SourceIp ou CLIENT_IP, se for um endereço IP.
Parser Logic principal.labels Etiquetas criadas a partir de vários campos, como FederationIdentifier, ApiType, OrgId e channel.
Parser Logic principal.location.city O valor de geoip_src.city_name, City ou LoginGeo.City do registo não processado.
Parser Logic principal.location.country_or_region O valor de geoip_src.country_name, Country, LoginGeo.Country ou client_geo do registo não processado.
Parser Logic principal.location.region_latitude O valor de data.properties.LoginLatitude.number do registo não processado.
Parser Logic principal.location.region_longitude O valor de data.properties.LoginLongitude.number do registo não processado.
Parser Logic principal.location.state O valor de geoip_src.region_name do registo não processado.
Parser Logic principal.platform O valor de Platform, OsName ou os_name do registo não processado, ou "WINDOWS" para LoginEventStream com Platform a conter "Windows".
Parser Logic principal.platform_version O valor de OsVersion ou os_version do registo não processado ou extraído de Platform para LoginEventStream com Platform a conter "Windows".
Parser Logic principal.resource.attribute.labels Etiquetas criadas a partir de vários campos, como CreatedById, ApiVersion, LogFile, LogFileContentType e LogFileLength.
Parser Logic principal.resource.name O valor de Browser ou browser_name do registo não processado, ou "Java (Salesforce.com)" para LoginHistory com ApiType como "SOAP Partner".
Parser Logic principal.resource.type Extraído de device_platform para eventos Lightning ou "Navegador" para LoginAsEvent e LoginAsEventStream.
Parser Logic principal.url O valor de LoginUrl do registo não processado.
Parser Logic principal.user.email_addresses O valor de usrName ou Username ou src_email ou IdentityUsed ou data.properties.Username.str ou data.properties.Email.str do registo não processado.
Parser Logic principal.user.product_object_id O valor de attrs.USER_ID_DERIVED ou data.properties.USER_ID_DERIVED.str do registo não processado.
Parser Logic principal.user.userid O valor de usrName ou Username ou user_id ou UserId ou USER_ID ou Id ou LoginKey ou CreatedByContext ou data.properties.Username.str ou data.properties.USER_ID.str ou data.properties.LoginKey.str do registo não processado.
Parser Logic security_result.action Derivado de Status ou OperationStatus ou ErrorCode ou action ou operation_status do registo não processado, transformado em ALLOW ou BLOCK.
Parser Logic security_result.action_details O valor de Status do registo não processado para LoginEventStream.
Parser Logic security_result.description O valor de LoginType, logintype, Operation, Action ou Display do registo não processado.
Parser Logic security_result.rule_name O valor de Policy ou rule_name do registo não processado.
Parser Logic security_result.summary Construído a partir de NewValue e OldValue ou REQUEST_STATUS ou Section ou forecastcategory do registo não processado.
Parser Logic target.administrative_domain O valor de ORGANIZATION_ID, DelegatedOrganizationId, organization_id ou data.properties.OrgName.str do registo não processado.
Parser Logic target.application O valor de Application, app_name, ApiType, Name ou data.properties.Application.str do registo não processado.
Parser Logic target.asset.hostname O valor de target_hostname extraído do campo uri.
Parser Logic target.asset.ip O valor de data.properties.CLIENT_IP.str do registo não processado.
Parser Logic target.asset_id Construído a partir de device_id ou REQUEST_ID.
Parser Logic target.file.mime_type O valor de file_type do registo não processado.
Parser Logic target.file.size O valor de size_bytes do registo não processado.
Parser Logic target.hostname O valor de target_hostname extraído do campo uri.
Parser Logic target.process.command_line O valor de query_exec, Query ou data.properties.Query.str do registo não processado.
Parser Logic target.process.pid O valor de job_id do registo não processado.
Parser Logic target.resource.attribute.labels Etiquetas criadas a partir de vários campos, como CPU_TIME, RUN_TIME, USER_TYPE, DB_TOTAL_TIME, MEDIA_TYPE, ROWS_PROCESSED, NUMBER_FIELDS, DB_BLOCKS, DB_CPU_TIME, ENTITY_NAME, EXCEPTION_MESSAGE, USER_ID_DERIVED, DOWNLOAD_FORMAT, USER_TYPE, CPU_TIME, RUN_TIME, WAVE_SESSION_ID, SessionLevel, verification_method, cpu_time, run_time, db_total_time, db_cpu_time, exec_time, callout_time, number_soql_queries, duration, user_type, entry_point, operation, session_level, rows_processed, sso_type, dashboard_type, Operation, SessionLevel.
Parser Logic target.resource.id O valor de REQUEST_ID ou RecordId ou caseid ou leadid ou contactid ou opportunityid ou accountid do registo não processado.
Parser Logic target.resource.name O valor de QueriedEntities ou resource_name ou component_name ou DATASET_IDS ou field ou StageName ou Subject do registo não processado.
Parser Logic target.resource.product_object_id O valor de REQUEST_ID do registo não processado.
Parser Logic target.resource.resource_type Definido como "ACCESS_POLICY" para ApexCallout e PlatformEncryption, ou "DATABASE" para ApexTrigger, ou "FILE" para ContentTransfer, ou "TABLE" para ApiEvent.
Parser Logic target.resource.type Definido como "BATCH" para QueuedExecution e ApexExecution, ou "FILE" para ContentTransfer, ou "DATABASE_TRIGGER" para ApexTrigger, ou "Case", "Lead", "Contact", "Opportunity", "Account" com base na presença dos campos de ID correspondentes.
Parser Logic target.url O valor de LoginUrl, URI, attributes.url, login_url ou uri do registo não processado.
Parser Logic target.user.email_addresses O valor de Username, attrs.usrName ou email_address do registo não processado.
Parser Logic target.user.user_display_name O valor de target_user_display_name, user_name ou username do registo não processado.
Parser Logic target.user.userid O valor de target_user_name, data.properties.UserId.str ou data.properties.CreatedById.str do registo não processado.
Parser Logic extensions.auth.auth_details Definido como "ACTIVE" se Status não for "Success". Caso contrário, é definido como "UNKNOWN_AUTHENTICATION_STATUS".
Parser Logic extensions.auth.mechanism Definido como "REMOTE" para eventos Login: Success e Login com logintype que contenham "Remote", ou "USERNAME_PASSWORD" para LoginEventStream, ou "MECHANISM_OTHER" para eventos com login_url presente, ou "AUTHTYPE_UNSPECIFIED" para eventos Login: Success e Logout.
Parser Logic extensions.auth.type Definido como "SSO" para Login, Logout, LogoutEvent, LoginAs, IdentityProviderEventStore, LoginHistory, LoginAsEvent com LoginType como "SAML Sfdc Initiated SSO" ou "AUTHTYPE_UNSPECIFIED" para Login: Success, Logout, LoginAsEvent com LoginType como "Application".

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