Coletar registros do Salesforce
Este documento explica como coletar registros do Salesforce configurando um feed do Google Security Operations usando a API de terceiros.
O Salesforce é uma plataforma de gestão de relacionamento com o cliente (CRM) baseada na nuvem que oferece ferramentas para vendas, serviços, marketing e análise. Os registros do Salesforce capturam a atividade do usuário, eventos de segurança, mudanças no sistema e uso da API em toda a plataforma.
Antes de começar
Verifique se você atende os seguintes pré-requisitos:
- Uma instância do Google SecOps
- Salesforce Enterprise Edition ou superior (acesso à API ativado)
- Permissões de administrador do sistema do Salesforce
- OpenSSL instalado (para geração de certificados)
Gerar par Chave RSA e certificado
Gere uma chave privada RSA e um certificado X.509 autoassinado para assinatura de JWT.
Gerar chave privada
```bash
openssl genrsa -out salesforce_private.key 2048
```
Gerar certificado autoassinado
```bash
openssl req -new -x509 -key salesforce_private.key -out salesforce_certificate.crt -days 365
```
Quando solicitado, insira os detalhes do certificado:
- Nome do país: insira o código de duas letras do país (por exemplo,
US). - Nome do estado ou da província: insira seu estado (por exemplo,
California). - Nome da localidade: insira sua cidade (por exemplo,
San Francisco). - Nome da organização: insira o nome da sua organização (por exemplo,
Acme Corp). - Nome da unidade organizacional: insira o departamento (por exemplo,
IT Security). - Nome comum: insira um nome descritivo (por exemplo,
Chronicle Integration). - Endereço de e-mail: insira o e-mail de contato.
Criar um app cliente externo do Salesforce
Os apps cliente externos são o método recomendado para autenticação OAuth no Salesforce (Spring '26 e versões mais recentes).
- Faça login no Salesforce.
- Acesse Configuração (ícone de engrenagem no canto superior direito).
- Na caixa Quick Find, digite
External Client Apps. - Clique em Gerenciador de apps cliente externos.
- Clique em Novo app cliente externo.
Configurar informações básicas
- Informe os seguintes detalhes de configuração:
- Nome do app cliente externo: insira um nome descritivo (por exemplo,
Google SecOps Integration). - Nome da API: preenchido automaticamente com base no nome do app. Mantenha o valor padrão ou personalize.
- E-mail de contato: digite seu endereço de e-mail.
- Estado da distribuição: selecione Local.
- Nome do app cliente externo: insira um nome descritivo (por exemplo,
- Clique em Continuar.
Ativar as configurações do OAuth
- Marque a caixa de seleção Ativar OAuth.
- Informe os seguintes detalhes de configuração:
- URL de retorno de chamada: digite
https://login.salesforce.com/services/oauth2/callback.
- URL de retorno de chamada: digite
- Na seção Escopos do OAuth, mova os seguintes escopos de Escopos do OAuth disponíveis para Escopos do OAuth selecionados:
- Gerenciar dados do usuário por APIs (api)
- Faça solicitações em seu nome a qualquer momento (refresh_token, offline_access)
Ativar o fluxo de portador JWT e fazer upload do certificado
- Na seção Ativação de fluxo, marque a caixa de seleção Ativar fluxo de portador JWT.
- A seção Upload de certificado aparece.
- Clique em Fazer upload de arquivos ou arraste e solte o arquivo de certificado.
- Selecione o arquivo
salesforce_certificate.crtgerado anteriormente. - Aguarde a conclusão do upload. O nome do arquivo do certificado vai aparecer abaixo do botão de upload.
Configurar políticas do OAuth
- Na seção Políticas do OAuth:
- Usuários permitidos: selecione Os usuários aprovados pelo administrador são pré-autorizados.
- Clique em Salvar.
Receber chave do cliente
Depois de criar o app cliente externo, recupere a chave de consumidor para a configuração do Chronicle.
- No Gerenciador de apps cliente externos, clique no nome do app (por exemplo,
Google SecOps Integration). - Acesse a guia Configurações.
- Na seção Configurações do OAuth, clique em Chave e chave secreta do consumidor.
- Copie e salve o valor da chave do consumidor.
Exemplo de formato de chave do consumidor:
```
3MVG9IKcPoNiNVBIPjdw4z.pcfRjTFBp7xC8x9k4U8jZ0HlLQdPqX5bKjR8yNzQ9_YvY.8xD3F2W6nXb5YgNx
```
Pré-autorizar o app cliente externo
O Salesforce exige pré-autorização para o fluxo de portador JWT. Pré-autorize atribuindo o app cliente externo a um usuário por um conjunto de permissões.
Criar conjunto de permissões
- Acesse Configuração > Usuários > Conjuntos de permissões.
- Clique em Novo.
- Informe os seguintes detalhes de configuração:
- Rótulo: insira
Chronicle Integration Users(por exemplo). - Nome da API: preenchido automaticamente com base no rótulo.
- Rótulo: insira
- Clique em Salvar.
Atribuir um conjunto de permissões ao app cliente externo
- Acesse Configuração > Gerenciador de apps clientes externos.
- Clique no app cliente externo (por exemplo,
Google SecOps Integration). - Clique na guia Políticas.
- Na seção Políticas de apps, em Selecionar conjuntos de permissões:
- Mova seu conjunto de permissões (por exemplo,
Chronicle Integration Users) de Conjuntos de permissões disponíveis para Conjuntos de permissões selecionados.
- Mova seu conjunto de permissões (por exemplo,
- Clique em Salvar.
Atribuir um conjunto de permissões ao usuário
- Na página de detalhes do conjunto de permissões, clique em Gerenciar atribuições.
- Clique em Adicionar atribuições.
- Marque a caixa de seleção ao lado da conta de usuário que será usada para a integração do Chronicle (por exemplo,
integration@acme.com). - Clique em Atribuir.
- Clique em Concluído.
Configurar um feed no Google SecOps para ingerir registros do Salesforce
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na próxima página, clique em Configurar um único feed.
- No campo Nome do feed, insira um nome para o feed (por exemplo,
Salesforce EventLogFile). - Selecione API de terceiros como o Tipo de origem.
- Selecione SALESFORCE como o Tipo de registro.
- Clique em Próxima.
- Especifique valores para os seguintes parâmetros de entrada:
- Nome do host da API: digite o nome do host da sua instância do Salesforce (por exemplo,
acme.my.salesforce.com).
- Nome do host da API: digite o nome do host da sua instância do Salesforce (por exemplo,
* **OAuth JWT Endpoint**: Enter the OAuth token endpoint URL:
- Production orgs: `https://login.salesforce.com/services/oauth2/token`
- Sandbox orgs: `https://test.salesforce.com/services/oauth2/token`
- My Domain: `https://acme.my.salesforce.com/services/oauth2/token`
* **JWT Claims Issuer**: Enter the Consumer Key from the External Client App.
* **JWT Claims Subject**: Enter the Salesforce username of the pre-authorized user (for example, `integration@acme.com`).
* **JWT Claims Audience**: Enter the authorization server URL:
- Production orgs: `https://login.salesforce.com`
- Sandbox orgs: `https://test.salesforce.com`
- My Domain: `https://acme.my.salesforce.com`
* **RSA Private Key**: Paste the complete private key contents including `-----BEGIN PRIVATE KEY-----` and `-----END PRIVATE KEY-----` markers.
Para acessar o conteúdo da chave privada:
```bash
cat salesforce_private.key
```
Copie toda a saída, incluindo as linhas de cabeçalho e rodapé.
* **Asset namespace**: The [asset namespace](/chronicle/docs/investigation/asset-namespaces).
* **Ingestion labels**: The label to be applied to the events from this feed.
- Clique em Próxima.
- Revise a nova configuração do feed na tela Finalizar e clique em Enviar.
Referência de tipos de instância do Salesforce
Os valores do endpoint e do público-alvo do JWT do OAuth dependem do tipo de instância do Salesforce:
| Instance Type | OAuth JWT Endpoint | JWT Claims Audience | API Hostname Format |
| ------------------- | ------------------------------------------------------- | -------------------------------- | -------------------------------------- |
| **Production** | `https://login.salesforce.com/services/oauth2/token` | `https://login.salesforce.com` | `company.my.salesforce.com` |
| **Sandbox** | `https://test.salesforce.com/services/oauth2/token` | `https://test.salesforce.com` | `company--sandbox.sandbox.my.salesforce.com` |
| **My Domain** | `https://domain.my.salesforce.com/services/oauth2/token`| `https://domain.my.salesforce.com` | `domain.my.salesforce.com` |
Note: "My Domain" is recommended for production deployments. "My Domain" provides a custom, branded login URL and is required for certain Salesforce features.
Tabela de mapeamento do UDM
| Campo de registro | Mapeamento do UDM | Lógica |
|---|---|---|
Account.Name |
target.resource.name |
O valor de Account.Name do registro bruto. |
AccountId |
target.resource.id |
O valor de AccountId do registro bruto. |
Action |
security_result.description |
O valor de Action do registro bruto. |
AdditionalInfo |
- | Não mapeado para o objeto IDM. |
ApiType |
target.application |
O valor de ApiType do registro bruto. |
ApiVersion |
- | Não mapeado para o objeto IDM. |
Application |
principal.application |
O valor de Application do registro bruto ou "Browser" para LoginAsEvent, "Integration JWT Token" para LoginEvent, "SfdcSiqActivityPlatform" para LoginHistory com objecttype LoginHistory, "N/A" para ApiEvent ou "Browser" para LoginAsEventStream. |
attributes.url |
target.url |
O valor de attributes.url do registro bruto ou URLs específicos para vários tipos de eventos do registro bruto. |
attributes.type |
metadata.product_event_type |
O valor de attributes.type do registro bruto. |
AuthSessionId |
network.session_id |
O valor de AuthSessionId do registro bruto. |
Browser |
principal.resource.name |
O valor de Browser do registro bruto ou "Unknown" se Browser não estiver disponível no registro bruto e Application for "Insights", ou "Java (Salesforce.com)" para LoginHistory com ApiType como "SOAP Partner", ou "Unknown" 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 registro bruto. |
CaseId |
target.resource.id |
O valor de CaseId do registro bruto. |
cat |
metadata.product_event_type |
O valor de cat do registro bruto. |
City |
principal.location.city |
O valor de City do registro bruto ou de LoginGeo.City para LoginHistory. |
Client |
principal.labels |
O valor de Client do registro bruto, formatado como um rótulo. |
CLIENT_IP |
principal.ip, principal.asset.ip |
O valor de CLIENT_IP do registro bruto. |
ClientVersion |
- | Não mapeado para o objeto IDM. |
CipherSuite |
network.tls.cipher |
O valor de CipherSuite do registro bruto. |
ColumnHeaders |
principal.labels |
O valor de ColumnHeaders do registro bruto, formatado como um rótulo. |
ConnectedAppId |
principal.labels |
O valor de ConnectedAppId do registro bruto, formatado como um rótulo. |
Contact.Name |
target.resource.name |
O valor de Contact.Name do registro bruto. |
ContactId |
target.resource.id |
O valor de ContactId do registro bruto. |
Country |
principal.location.country_or_region |
O valor de Country do registro bruto ou LoginGeo.Country para "LoginHistory". |
CreatedByContext |
principal.user.userid |
O valor de CreatedByContext do registro bruto. |
CreatedById |
principal.resource.attribute.labels |
O valor de CreatedById do registro bruto, formatado como um rótulo. |
CreatedDate |
metadata.collected_timestamp |
O valor de CreatedDate do registro bruto ou o carimbo de data/hora atual, se não estiver disponível. |
CPU_TIME |
target.resource.attribute.labels |
O valor de CPU_TIME do registro bruto, formatado como um rótulo. |
data |
- | Contém vários campos extraídos e mapeados individualmente. |
DATASET_IDS |
target.resource.name |
O valor de DATASET_IDS do registro bruto. |
DelegatedOrganizationId |
target.administrative_domain |
O valor de DelegatedOrganizationId do registro bruto. |
DelegatedUsername |
observer.user.userid |
O valor de DelegatedUsername do registro bruto. |
Description |
metadata.description |
O valor de Description do registro bruto. |
DevicePlatform |
principal.resource.type |
O valor de DevicePlatform do registro bruto, analisado para extrair o tipo de recurso. |
Display |
metadata.description |
O valor de Display do registro bruto. |
DOWNLOAD_FORMAT |
target.resource.attribute.labels |
O valor de DOWNLOAD_FORMAT do registro bruto, formatado como um rótulo. |
Duration |
target.resource.attribute.labels |
O valor de Duration do registro bruto, formatado como um rótulo. |
ENTITY_NAME |
target.resource.attribute.labels |
O valor de ENTITY_NAME do registro bruto, formatado como um rótulo. |
ErrorCode |
security_result.action |
O valor de ErrorCode do registro bruto, transformado em ALLOW ou BLOCK. |
EventDate |
timestamp |
O valor de EventDate do registro bruto ou data.properties.TIMESTAMP_DERIVED.str, data.properties.TIMESTAMP_DERIVED_FIRST.str, @timestamp, created_date, timestamp ou LoginTime, se disponível, para LoginHistory. |
EventIdentifier |
metadata.product_log_id |
O valor de EventIdentifier do registro bruto. |
EventType |
metadata.product_event_type |
O valor de EventType do registro bruto. |
Id |
principal.user.userid |
O valor de Id do registro bruto ou metadata.product_log_id para SetupAuditTrail e outros eventos. |
IdentityUsed |
principal.user.email_addresses |
O valor de IdentityUsed do registro bruto. |
Lead.Name |
target.resource.name |
O valor de Lead.Name do registro bruto. |
LeadId |
target.resource.id |
O valor de LeadId do registro bruto. |
LoginAsCategory |
- | Não mapeado para o objeto IDM. |
LoginGeo.Country |
principal.location.country_or_region |
O valor de LoginGeo.Country do registro bruto. |
LoginHistoryId |
- | Não mapeado para o objeto IDM. |
LoginKey |
principal.user.userid, network.session_id |
O valor de LoginKey do registro bruto ou CreatedByContext para SetupAuditTrail. |
LoginTime |
timestamp |
O valor de LoginTime do registro bruto. |
LoginType |
security_result.description |
O valor de LoginType do registro bruto ou "Outra API Apex" para LoginHistory com ApiType como "Parceiro SOAP" ou "Acesso remoto 2.0" para LoginHistory com Application como "SfdcSiqActivityPlatform". |
LoginUrl |
target.url, principal.url |
O valor de LoginUrl do registro bruto. |
LogFile |
principal.resource.attribute.labels |
O valor de LogFile do registro bruto, formatado como um rótulo. |
LogFileContentType |
principal.resource.attribute.labels |
O valor de LogFileContentType do registro bruto, formatado como um rótulo. |
LogFileLength |
principal.resource.attribute.labels |
O valor de LogFileLength do registro bruto, formatado como um rótulo. |
Message |
- | Não mapeado para o objeto IDM. |
METHOD |
network.http.method |
O valor de METHOD do registro bruto. |
Name |
target.application |
O valor de Name do registro bruto. |
NewValue |
- | Usado com OldValue para gerar security_result.summary. |
NUMBER_FIELDS |
target.resource.attribute.labels |
O valor de NUMBER_FIELDS do registro bruto, formatado como um rótulo. |
OldValue |
- | Usado com NewValue para gerar security_result.summary. |
Operation |
security_result.description, target.resource.attribute.labels |
O valor de Operation do registro bruto ou Display para SetupAuditTrail. |
OperationStatus |
security_result.action |
O valor de OperationStatus do registro bruto, transformado em ALLOW ou BLOCK. |
ORGANIZATION_ID |
target.administrative_domain |
O valor de ORGANIZATION_ID do registro bruto. |
OsName |
principal.platform |
O valor de OsName do registro bruto. |
OsVersion |
principal.platform_version |
O valor de OsVersion do registro bruto. |
Platform |
principal.platform |
O valor de Platform do registro bruto 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 registro bruto ou component_name para UriEvent e ApiEvent. |
Query |
target.process.command_line, principal.labels |
O valor de Query do registro bruto. |
RecordId |
target.resource.id |
O valor de RecordId do registro bruto. |
Records |
principal.labels |
O valor de Records do registro bruto, formatado como um rótulo. |
REQUEST_ID |
metadata.product_log_id, target.resource.product_object_id |
O valor de REQUEST_ID do registro bruto. |
REQUEST_SIZE |
network.sent_bytes |
O valor de REQUEST_SIZE do registro bruto. |
REQUEST_STATUS |
security_result.summary |
O valor de REQUEST_STATUS do registro bruto. |
RESPONSE_SIZE |
network.received_bytes |
O valor de RESPONSE_SIZE do registro bruto. |
RowsProcessed |
target.resource.attribute.labels |
O valor de RowsProcessed do registro bruto, formatado como um rótulo. |
RUN_TIME |
target.resource.attribute.labels |
O valor de RUN_TIME do registro bruto, formatado como um rótulo. |
SamlEntityUrl |
- | Não mapeado para o objeto IDM. |
SdkAppType |
- | Não mapeado para o objeto IDM. |
SdkAppVersion |
- | Não mapeado para o objeto IDM. |
SdkVersion |
- | Não mapeado para o objeto IDM. |
Section |
security_result.summary |
O valor de Section do registro bruto. |
SessionKey |
network.session_id |
O valor de SessionKey do registro bruto. |
SessionLevel |
target.resource.attribute.labels |
O valor de SessionLevel do registro bruto, formatado como um rótulo. |
SourceIp |
principal.ip, principal.asset.ip |
O valor de SourceIp do registro bruto. |
src |
principal.ip, principal.asset.ip |
O valor de src do registro bruto. |
SsoType |
target.resource.attribute.labels |
O valor de SsoType do registro bruto, formatado como um rótulo. |
STATUS_CODE |
network.http.response_code |
O valor de STATUS_CODE do registro bruto. |
Status |
security_result.action, security_result.action_details |
O valor de Status do registro bruto, transformado em ALLOW ou BLOCK ou usado como detalhes da ação para LoginEventStream. |
Subject |
target.resource.name |
O valor de Subject do registro bruto. |
TargetUrl |
- | Não mapeado para o objeto IDM. |
TIMESTAMP |
metadata.collected_timestamp |
O valor de TIMESTAMP do registro bruto. |
TIMESTAMP_DERIVED |
timestamp |
O valor de TIMESTAMP_DERIVED do registro bruto. |
TlsProtocol |
network.tls.version_protocol |
O valor de TlsProtocol do registro bruto. |
URI |
target.url |
O valor de URI do registro bruto. |
USER_AGENT |
network.http.user_agent |
O valor de USER_AGENT do registro bruto. |
USER_ID |
principal.user.userid |
O valor de USER_ID do registro bruto. |
USER_ID_DERIVED |
principal.user.product_object_id, target.resource.attribute.labels |
O valor de USER_ID_DERIVED do registro bruto. |
UserId |
principal.user.userid |
O valor de UserId do registro bruto. |
USER_TYPE |
target.resource.attribute.labels |
O valor de USER_TYPE do registro bruto, formatado como um rótulo. |
Username |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
O valor de Username do registro bruto, src_email para vários eventos, IdentityUsed para IdentityProviderEventStore, 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 registro bruto, formatado como um rótulo. |
usrName |
principal.user.userid, principal.user.email_addresses, target.user.email_addresses |
O valor de usrName do registro bruto. |
VerificationMethod |
target.resource.attribute.labels |
O valor de VerificationMethod do registro bruto, formatado como um rótulo. |
| Lógica do analisador | 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 rede e na presença principal. |
| Lógica do analisador | metadata.ingestion_labels |
Rótulos que indicam a origem do evento: "Arquivo de registro de eventos", "Monitoramento de eventos em tempo real" ou "SetupAuditTrail". |
| Lógica do analisador | metadata.log_type |
Sempre definido como "SALESFORCE". |
| Lógica do analisador | metadata.product_name |
Sempre definido como "SALESFORCE". |
| Lógica do analisador | metadata.vendor_name |
Sempre definido como "SALESFORCE". |
| Lógica do analisador | metadata.url_back_to_product |
Construído com vários campos, como LoginUrl, attributes.url, data.properties.PageUrl.str e data.properties.LoginUrl.str. |
| Lógica do analisador | network.application_protocol |
Definido como "HTTPS" se o campo uri começar com "http". |
| Lógica do analisador | network.http.referral_url |
Extraído do campo user_agent se ele contiver "Referer=". |
| Lógica do analisador | network.http.response_code |
Derivado de request_status para vários eventos. |
| Lógica do analisador | network.http.user_agent |
O valor de user_agent do registro bruto ou de data.properties.UserAgent.str para ApiEventStream e LoginEventStream, ou de eventos Sites, ou "User-Agent" de eventos Sites. |
| Lógica do analisador | network.session_id |
O valor de session_key ou SESSION_KEY do registro bruto ou construído com base em outros campos, como LoginKey ou AuthSessionId. |
| Lógica do analisador | network.tls.version |
O valor de tls_protocol do registro bruto ou de data.properties.TlsProtocol.str para LoginEventStream. |
| Lógica do analisador | principal.application |
O valor de application do registro bruto ou "Salesforce para Outlook" para eventos de login: sucesso ou "Insights" para eventos de login: sucesso sem aplicativo ou extraído de device_platform para eventos do Lightning. |
| Lógica do analisador | principal.asset.hostname |
O valor de client_ip se for um nome de host. |
| Lógica do analisador | principal.asset.ip |
O valor de client_ip ou src_ip ou SourceIp ou CLIENT_IP se for um endereço IP. |
| Lógica do analisador | principal.hostname |
O valor de client_ip se for um nome de host. |
| Lógica do analisador | principal.ip |
O valor de client_ip ou src_ip ou SourceIp ou CLIENT_IP se for um endereço IP. |
| Lógica do analisador | principal.labels |
Rótulos criados com base em vários campos, como FederationIdentifier, ApiType, OrgId e channel. |
| Lógica do analisador | principal.location.city |
O valor de geoip_src.city_name, City ou LoginGeo.City do registro bruto. |
| Lógica do analisador | principal.location.country_or_region |
O valor de geoip_src.country_name, Country, LoginGeo.Country ou client_geo do registro bruto. |
| Lógica do analisador | principal.location.region_latitude |
O valor de data.properties.LoginLatitude.number do registro bruto. |
| Lógica do analisador | principal.location.region_longitude |
O valor de data.properties.LoginLongitude.number do registro bruto. |
| Lógica do analisador | principal.location.state |
O valor de geoip_src.region_name do registro bruto. |
| Lógica do analisador | principal.platform |
O valor de Platform ou OsName ou os_name do registro bruto ou "WINDOWS" para LoginEventStream com Platform contendo "Windows". |
| Lógica do analisador | principal.platform_version |
O valor de OsVersion ou os_version do registro bruto ou extraído de Platform para LoginEventStream com Platform contendo "Windows". |
| Lógica do analisador | principal.resource.attribute.labels |
Rótulos criados com base em vários campos, como CreatedById, ApiVersion, LogFile, LogFileContentType, LogFileLength. |
| Lógica do analisador | principal.resource.name |
O valor de Browser ou browser_name do registro bruto ou "Java (Salesforce.com)" para LoginHistory com ApiType como "Parceiro SOAP". |
| Lógica do analisador | principal.resource.type |
Extraído de device_platform para eventos do Lightning ou "Browser" para LoginAsEvent e LoginAsEventStream. |
| Lógica do analisador | principal.url |
O valor de LoginUrl do registro bruto. |
| Lógica do analisador | 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 registro bruto. |
| Lógica do analisador | principal.user.product_object_id |
O valor de attrs.USER_ID_DERIVED ou data.properties.USER_ID_DERIVED.str do registro bruto. |
| Lógica do analisador | 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 registro bruto. |
| Lógica do analisador | security_result.action |
Derivado de Status ou OperationStatus ou ErrorCode ou action ou operation_status do registro bruto, transformado em ALLOW ou BLOCK. |
| Lógica do analisador | security_result.action_details |
O valor de Status do registro bruto para LoginEventStream. |
| Lógica do analisador | security_result.description |
O valor de LoginType ou logintype ou Operation ou Action ou Display do registro bruto. |
| Lógica do analisador | security_result.rule_name |
O valor de Policy ou rule_name do registro bruto. |
| Lógica do analisador | security_result.summary |
Construído com base em NewValue e OldValue ou REQUEST_STATUS ou Section ou forecastcategory do registro bruto. |
| Lógica do analisador | target.administrative_domain |
O valor de ORGANIZATION_ID, DelegatedOrganizationId, organization_id ou data.properties.OrgName.str do registro bruto. |
| Lógica do analisador | target.application |
O valor de Application ou app_name ou ApiType ou Name ou data.properties.Application.str do registro bruto. |
| Lógica do analisador | target.asset.hostname |
O valor de target_hostname extraído do campo uri. |
| Lógica do analisador | target.asset.ip |
O valor de data.properties.CLIENT_IP.str do registro bruto. |
| Lógica do analisador | target.asset_id |
Construído com device_id ou REQUEST_ID. |
| Lógica do analisador | target.file.mime_type |
O valor de file_type do registro bruto. |
| Lógica do analisador | target.file.size |
O valor de size_bytes do registro bruto. |
| Lógica do analisador | target.hostname |
O valor de target_hostname extraído do campo uri. |
| Lógica do analisador | target.process.command_line |
O valor de query_exec, Query ou data.properties.Query.str do registro bruto. |
| Lógica do analisador | target.process.pid |
O valor de job_id do registro bruto. |
| Lógica do analisador | target.resource.attribute.labels |
Rótulos criados com base em 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 e SessionLevel. |
| Lógica do analisador | target.resource.id |
O valor de REQUEST_ID ou RecordId ou caseid ou leadid ou contactid ou opportunityid ou accountid do registro bruto. |
| Lógica do analisador | target.resource.name |
O valor de QueriedEntities ou resource_name ou component_name ou DATASET_IDS ou field ou StageName ou Subject do registro bruto. |
| Lógica do analisador | target.resource.product_object_id |
O valor de REQUEST_ID do registro bruto. |
| Lógica do analisador | target.resource.resource_type |
Definido como "ACCESS_POLICY" para ApexCallout e PlatformEncryption, "DATABASE" para ApexTrigger, "FILE" para ContentTransfer ou "TABLE" para ApiEvent. |
| Lógica do analisador | target.resource.type |
Defina como "BATCH" para QueuedExecution e ApexExecution, "FILE" para ContentTransfer, "DATABASE_TRIGGER" para ApexTrigger ou "Case", "Lead", "Contact", "Opportunity", "Account" com base na presença dos campos de ID correspondentes. |
| Lógica do analisador | target.url |
O valor de LoginUrl ou URI ou attributes.url ou login_url ou uri do registro bruto. |
| Lógica do analisador | target.user.email_addresses |
O valor de Username, attrs.usrName ou email_address do registro bruto. |
| Lógica do analisador | target.user.user_display_name |
O valor de target_user_display_name, user_name ou username do registro bruto. |
| Lógica do analisador | target.user.userid |
O valor de target_user_name, data.properties.UserId.str ou data.properties.CreatedById.str do registro bruto. |
| Lógica do analisador | extensions.auth.auth_details |
Definido como "ACTIVE" se Status não for "Success". Caso contrário, definido como "UNKNOWN_AUTHENTICATION_STATUS". |
| Lógica do analisador | extensions.auth.mechanism |
Definido como "REMOTE" para eventos de login: sucesso e login com logintype contendo "Remote", ou "USERNAME_PASSWORD" para LoginEventStream, ou "MECHANISM_OTHER" para eventos com login_url presente, ou "AUTHTYPE_UNSPECIFIED" para eventos de login: sucesso e logout. |
| Lógica do analisador | 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 do Google SecOps.