Coletar registros do Salesforce
Visão geral
Esse analisador processa registros do Salesforce nos formatos LEEF, CSV e JSON. Ele extrai campos, realiza o processamento específico do formato (processando pares de chave-valor LEEF, colunas CSV e estruturas JSON), os mapeia 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 logins, logouts e outras ações, categorizando eventos e definindo os tipos de eventos do UDM apropriados.
Antes de começar
- Verifique se você tem uma instância do Google SecOps.
- Verifique se você tem acesso privilegiado ao AWS IAM, ao S3 e ao AppFlow.
Configurar o bucket do Amazon S3
- Crie um bucket do Amazon S3 seguindo este guia do usuário: Criar um bucket.
- Salve o Nome e a Região do bucket para referência futura.
- Crie um usuário seguindo este guia: Como criar um usuário do IAM.
- Selecione o Usuário criado.
- Selecione a guia Credenciais de segurança.
- Clique em Criar chave de acesso na seção Chaves de acesso.
- Selecione Serviço de terceiros como o caso de uso.
- Clique em Próxima.
- Opcional: adicione uma tag de descrição.
- Clique em Criar chave de acesso.
- Clique em Fazer o download do arquivo .csv. Salve a Chave de acesso e a Chave de acesso secreta para referência futura.
- Clique em Concluído.
- Selecione a guia Permissões.
- Clique em Adicionar permissões na seção Políticas de permissões.
- Selecione Adicionar permissões.
- Selecione Anexar políticas diretamente.
- Pesquise a política AmazonS3FullAccess.
- Selecione a política.
- Clique em Próxima.
- Clique em Adicionar permissões
Configurar o Amazon AppFlow
- Crie um fluxo do Amazon AppFlow:
- Nome do fluxo: adicione um nome e clique em Próxima.
- Origem de dados: escolha Salesforce como a origem de dados.
- Criar uma nova conexão.
- Uma janela de login do Salesforce vai aparecer. Faça login com suas credenciais do Salesforce.
- Selecione o nome do objeto (escolha os dados que você quer transferir do Salesforce para o bucket do S3).
- Selecione Amazon S3 como o destino dos dados.
- Selecione Programar como o acionador do fluxo.
- Em Escolher campos de origem, você pode mapear todos os campos diretamente ou especificar quais campos mapear.
- Valide a configuração:
- No Amazon AppFlow, selecione o fluxo criado e clique em Executar fluxo para buscar dados do Salesforce.
- Os registros agora devem estar no seu bucket do S3.
Configurar um feed no Google SecOps para ingerir registros do Salesforce
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo.
- No campo Nome do feed, insira um nome para o feed (por exemplo, Logs do Salesforce).
- Selecione Amazon S3 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:
- Região: a região em que o bucket do Amazon S3 está localizado.
- URI do S3: o URI do bucket.
s3:/BUCKET_NAME
Substitua:BUCKET_NAME
: o nome do bucket
- URI é um: selecione o TIPO DE URI de acordo com a configuração do fluxo do S3:
Single file
|Directory
|Directory which includes subdirectories
. - Opções de exclusão da origem: selecione a opção de exclusão de acordo com sua preferência.
- ID da chave de acesso: a chave de acesso do usuário com acesso ao bucket do S3.
- Chave de acesso secreta: a chave secreta do usuário com acesso ao bucket do S3.
- Namespace de recursos: o namespace de recursos.
- Rótulos de ingestão: o rótulo a ser aplicado aos eventos desse feed.
Clique em Próxima.
Revise a configuração do novo feed na tela Finalizar e clique em Enviar.
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, ou "Integration JWT Token" para LoginEvent, ou "SfdcSiqActivityPlatform" para LoginHistory com o tipo de objeto LoginHistory, ou "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 "Desconhecido" se Browser não estiver disponível no registro bruto e Application for "Insights" ou "Java (Salesforce.com)" para LoginHistory com ApiType como "Parceiro SOAP" 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 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 PERMITIR ou BLOQUEAR. |
EventDate |
timestamp |
O valor de EventDate do registro bruto 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 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 PERMITIR ou BLOQUEAR. |
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 PERMITIR ou BLOQUEAR ou usado como detalhes de 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 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 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 do principal. |
Lógica do analisador | metadata.ingestion_labels |
Rótulos que indicam a origem do evento, como "Arquivo de registro de eventos", "Monitoramento de eventos em tempo real" ou "SetupAuditTrail". |
Lógica do analisador | metadata.log_type |
Sempre defina como "SALESFORCE". |
Lógica do analisador | metadata.product_name |
Sempre defina como "SALESFORCE". |
Lógica do analisador | metadata.vendor_name |
Sempre defina como "SALESFORCE". |
Lógica do analisador | 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 . |
Lógica do analisador | network.application_protocol |
Defina como "HTTPS" se o campo uri começar com "http". |
Lógica do analisador | network.http.referral_url |
Extraídos 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 criado a partir de 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 a partir de vários campos, como FederationIdentifier , ApiType , OrgId e channel . |
Lógica do analisador | principal.location.city |
O valor de geoip_src.city_name ou City ou LoginGeo.City do registro bruto. |
Lógica do analisador | principal.location.country_or_region |
O valor de geoip_src.country_name ou Country ou 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 a partir de vários campos, como CreatedById , ApiVersion , LogFile , LogFileContentType e 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 "SOAP Partner". |
Lógica do analisador | principal.resource.type |
Extraídos 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 PERMITIR ou BLOQUEAR. |
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 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 ou DelegatedOrganizationId ou 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 ou 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 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 . |
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 |
Defina como "ACCESS_POLICY" para ApexCallout e PlatformEncryption, ou "DATABASE" para ApexTrigger, ou "FILE" para ContentTransfer ou "TABLE" para ApiEvent. |
Lógica do analisador | target.resource.type |
Defina 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. |
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 ou attrs.usrName ou email_address do registro bruto. |
Lógica do analisador | target.user.user_display_name |
O valor de target_user_display_name ou user_name ou username do registro bruto. |
Lógica do analisador | target.user.userid |
O valor de target_user_name ou data.properties.UserId.str ou data.properties.CreatedById.str do registro bruto. |
Lógica do analisador | extensions.auth.auth_details |
Defina como "ACTIVE" se Status não for "Success". Caso contrário, defina como "UNKNOWN_AUTHENTICATION_STATUS". |
Lógica do analisador | extensions.auth.mechanism |
Defina como "REMOTE" para eventos de login e sucesso de 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 e logout. |
Lógica do analisador | extensions.auth.type |
Defina como "SSO" para login, logout, LogoutEvent, LoginAs, IdentityProviderEventStore, LoginHistory, LoginAsEvent com LoginType como "SAML Sfdc Initiated SSO" ou "AUTHTYPE_UNSPECIFIED" para login: sucesso, logout, LoginAsEvent com LoginType como "Application". |
Alterações
2024-06-04
- Adição de suporte a registros recém-ingeridos.
2024-03-06
- O mapeamento do campo "Id" foi alterado de "metadata.product_log_id" para "principal.user.userid".
- O mapeamento do campo "CreatedById" mudou de "principal.user.userid" para "principal.resource.attribute.labels".
- "IsDeleted" foi associado a "principal.resource.attribute.labels".
- "LogFileLength" foi mapeado para "principal.resource.attribute.labels".
- "LogFileContentType" foi associado a "principal.resource.attribute.labels".
- "ApiVersion" foi mapeado para "principal.resource.attribute.labels".
- "LogFile" foi mapeado para "principal.resource.attribute.labels".
2023-02-24
- Enhancement-
- "security_result.action" mapeado para PERMITIR em vez de BLOQUEAR se a ação for "LOGIN_NO_ERROR".
- Para eventos de "Login":
- "action" mapeado para "security_result.action".
- "target_user_name" mapeado para "target.user.userid".
- "tls_protocol" mapeado para "network.tls.version_protocol".
- "cipher_suite" mapeado para "network.tls.cipher".
- A verificação "on_error" foi adicionada para o bloco "OsVersion" e "date".
2022-12-13
- Enhancement-
- "LoginType" foi associado a "security_result.description".
- "LoginUrl" foi associado a "principal.url".
- Adição de verificação vazia para "ApiType" e "LoginGeo.City".
2022-09-02
- Enhancement-
- Os analisadores personalizados foram migrados para o analisador padrão.
2022-07-04
- Enhancement-
- Melhoria do analisador para analisar os registros com event_type 'LoginHistory'.
- Foi adicionada uma condição para analisar diferentes formatos de carimbo de data/hora.
- Foi adicionada uma condição para event_type "USER_UNCATEGORIZED" em que "user_id" ou "UserId" ou "target_user_name" não é nulo.
- Adição de validação para analisar src_ip.
18/04/2022
- Mapeamento modificado pela melhoria para DOWNLOAD_FORMAT de "metadata.ingestion_labels" para "target.resource.attribute.labels".
2022-03-30
- Melhoria: o event_type de "LoginEventStream" foi alterado para USER_LOGIN.
- Mapeamento corrigido para os campos DOWNLOAD_FORMAT e ConnectedAppId.
- Foram adicionados mapeamentos para determinados campos quando o registro é do tipo LoginEventStream, WaveDownload e ApiEventStream.