Recopila registros de Salesforce
Descripción general
Este analizador controla los registros de Salesforce en los formatos LEEF, CSV y JSON. Extrae campos, realiza un procesamiento específico del formato (controla los pares clave-valor de LEEF, las columnas CSV y las estructuras JSON), los asigna a la UDM y enriquece los datos con metadatos y campos derivados. El analizador también controla varios tipos de eventos de Salesforce, aplica una lógica específica para los accesos, los cierres de sesión y otras acciones, clasifica los eventos y establece los tipos de eventos de la AUA adecuados.
Antes de comenzar
- Asegúrate de tener una instancia de Google SecOps.
- Asegúrate de tener acceso con privilegios a AWS IAM, S3 y AppFlow.
Configura el bucket de Amazon S3
- Crea un bucket de Amazon S3 siguiendo esta guía del usuario: Cómo crear un bucket
- Guarda el Nombre y la Región del bucket para usarlos como referencia en el futuro.
- Crea un usuario siguiendo esta guía del usuario: Cómo crear un usuario de IAM.
- Selecciona el Usuario creado.
- Selecciona la pestaña Credenciales de seguridad.
- Haz clic en Crear clave de acceso en la sección Claves de acceso.
- Selecciona Servicio de terceros como Caso de uso.
- Haz clic en Siguiente.
- Opcional: Agrega una etiqueta de descripción.
- Haz clic en Crear clave de acceso.
- Haz clic en Descargar archivo .csv. (Guarda la Clave de acceso y la Clave de acceso secreta para usarlas como referencia en el futuro).
- Haz clic en Listo.
- Selecciona la pestaña Permisos.
- Haz clic en Agregar permisos en la sección Políticas de permisos.
- Selecciona Agregar permisos.
- Selecciona Adjuntar políticas directamente.
- Busca la política AmazonS3FullAccess.
- Selecciona la política.
- Haz clic en Siguiente.
- Haz clic en Agregar permisos.
Configura Amazon AppFlow
- Crea un flujo de Amazon AppFlow:
- Nombre del flujo: Agrega un nombre de flujo y haz clic en Siguiente.
- Fuente de datos: Elige Salesforce como la fuente de datos.
- Crea una conexión nueva.
- Aparecerá una ventana de acceso de Salesforce. Accede con tus credenciales de Salesforce.
- Selecciona el nombre del objeto (elige los datos que deseas transferir de Salesforce al bucket de S3).
- Selecciona Amazon S3 como el destino de los datos.
- Selecciona Programar como el activador del flujo.
- En Elegir campos de origen, puedes asignar todos los campos directamente o especificar qué campos asignar.
- Valida la configuración:
- En Amazon AppFlow, selecciona el flujo que creaste y haz clic en Run flow para recuperar datos de Salesforce.
- Los registros ahora deberían estar en tu bucket de S3.
Configura un feed en Google SecOps para transferir registros de Salesforce
- Ve a Configuración de SIEM > Feeds.
- Haz clic en Agregar nueva.
- En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Registros de Salesforce).
- Selecciona Amazon S3 como el Tipo de fuente.
- Selecciona Salesforce como el Tipo de registro.
- Haz clic en Siguiente.
Especifica valores para los siguientes parámetros de entrada:
- Región: Es la región en la que se encuentra el bucket de Amazon S3.
- URI de S3: Es el URI del bucket.
s3:/BUCKET_NAME
Reemplaza lo siguiente:BUCKET_NAME
: el nombre del bucket.
- URI es un: Selecciona el TIPO DE URI según la configuración del flujo de S3:
Single file
|Directory
|Directory which includes subdirectories
. - Opciones de eliminación de fuentes: Selecciona la opción de eliminación según tus preferencias.
- ID de clave de acceso: Es la clave de acceso del usuario con acceso al bucket de S3.
- Clave de acceso secreta: Es la clave secreta del usuario con acceso al bucket de S3.
- Espacio de nombres de recursos: Es el espacio de nombres de recursos.
- Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed.
Haz clic en Siguiente.
Revisa la configuración de tu nuevo feed en la pantalla Finalizar y, luego, haz clic en Enviar.
Tabla de asignación de UDM
Campo de registro | Asignación de UDM | Lógica |
---|---|---|
Account.Name |
target.resource.name |
El valor de Account.Name del registro sin procesar. |
AccountId |
target.resource.id |
El valor de AccountId del registro sin procesar. |
Action |
security_result.description |
El valor de Action del registro sin procesar. |
AdditionalInfo |
- | No está asignado al objeto IDM. |
ApiType |
target.application |
El valor de ApiType del registro sin procesar. |
ApiVersion |
- | No está asignado al objeto IDM. |
Application |
principal.application |
El valor de Application del registro sin procesar, "Browser" para LoginAsEvent, "Integration JWT Token" para LoginEvent, "SfdcSiqActivityPlatform" para LoginHistory con objecttype LoginHistory, "N/A" para ApiEvent o "Browser" para LoginAsEventStream. |
attributes.url |
target.url |
El valor de attributes.url del registro sin procesar o las URLs específicas para varios tipos de eventos del registro sin procesar |
attributes.type |
metadata.product_event_type |
El valor de attributes.type del registro sin procesar. |
AuthSessionId |
network.session_id |
El valor de AuthSessionId del registro sin procesar. |
Browser |
principal.resource.name |
El valor de Browser del registro sin procesar o "Desconocido" si Browser no está disponible en el registro sin procesar y Application es "Insights", o "Java (Salesforce.com)" para LoginHistory con ApiType como "SOAP Partner", o "Desconocido" para LoginHistory con Application como "SfdcSiqActivityPlatform", o de data.properties.Browser.str para LoginAsEventStream. |
Case.Subject |
target.resource.name |
El valor de Case.Subject del registro sin procesar. |
CaseId |
target.resource.id |
El valor de CaseId del registro sin procesar. |
cat |
metadata.product_event_type |
El valor de cat del registro sin procesar. |
City |
principal.location.city |
El valor de City del registro sin procesar o de LoginGeo.City para LoginHistory. |
Client |
principal.labels |
El valor de Client del registro sin procesar, con el formato de una etiqueta. |
CLIENT_IP |
principal.ip , principal.asset.ip |
El valor de CLIENT_IP del registro sin procesar. |
ClientVersion |
- | No está asignado al objeto IDM. |
CipherSuite |
network.tls.cipher |
El valor de CipherSuite del registro sin procesar. |
ColumnHeaders |
principal.labels |
El valor de ColumnHeaders del registro sin procesar, con el formato de una etiqueta. |
ConnectedAppId |
principal.labels |
El valor de ConnectedAppId del registro sin procesar, con el formato de una etiqueta. |
Contact.Name |
target.resource.name |
El valor de Contact.Name del registro sin procesar. |
ContactId |
target.resource.id |
El valor de ContactId del registro sin procesar. |
Country |
principal.location.country_or_region |
El valor de Country del registro sin procesar o LoginGeo.Country para LoginHistory. |
CreatedByContext |
principal.user.userid |
El valor de CreatedByContext del registro sin procesar. |
CreatedById |
principal.resource.attribute.labels |
El valor de CreatedById del registro sin procesar, con el formato de una etiqueta. |
CreatedDate |
metadata.collected_timestamp |
El valor de CreatedDate del registro sin procesar o la marca de tiempo actual si no está disponible |
CPU_TIME |
target.resource.attribute.labels |
El valor de CPU_TIME del registro sin procesar, con el formato de una etiqueta. |
data |
- | Contiene varios campos que se extraen y asignan de forma individual. |
DATASET_IDS |
target.resource.name |
El valor de DATASET_IDS del registro sin procesar. |
DelegatedOrganizationId |
target.administrative_domain |
El valor de DelegatedOrganizationId del registro sin procesar. |
DelegatedUsername |
observer.user.userid |
El valor de DelegatedUsername del registro sin procesar. |
Description |
metadata.description |
El valor de Description del registro sin procesar. |
DevicePlatform |
principal.resource.type |
El valor de DevicePlatform del registro sin procesar, analizado para extraer el tipo de recurso |
Display |
metadata.description |
El valor de Display del registro sin procesar. |
DOWNLOAD_FORMAT |
target.resource.attribute.labels |
El valor de DOWNLOAD_FORMAT del registro sin procesar, con el formato de una etiqueta. |
Duration |
target.resource.attribute.labels |
El valor de Duration del registro sin procesar, con el formato de una etiqueta. |
ENTITY_NAME |
target.resource.attribute.labels |
El valor de ENTITY_NAME del registro sin procesar, con el formato de una etiqueta. |
ErrorCode |
security_result.action |
El valor de ErrorCode del registro sin procesar, transformado en ALLOW o BLOCK. |
EventDate |
timestamp |
El valor de EventDate del registro sin procesar, o data.properties.TIMESTAMP_DERIVED.str si está disponible, o data.properties.TIMESTAMP_DERIVED_FIRST.str si está disponible, o @timestamp si está disponible, o created_date si está disponible, o timestamp si está disponible, o LoginTime para LoginHistory. |
EventIdentifier |
metadata.product_log_id |
El valor de EventIdentifier del registro sin procesar. |
EventType |
metadata.product_event_type |
El valor de EventType del registro sin procesar. |
Id |
principal.user.userid |
El valor de Id del registro sin procesar o metadata.product_log_id para SetupAuditTrail y otros eventos |
IdentityUsed |
principal.user.email_addresses |
El valor de IdentityUsed del registro sin procesar. |
Lead.Name |
target.resource.name |
El valor de Lead.Name del registro sin procesar. |
LeadId |
target.resource.id |
El valor de LeadId del registro sin procesar. |
LoginAsCategory |
- | No está asignado al objeto IDM. |
LoginGeo.Country |
principal.location.country_or_region |
El valor de LoginGeo.Country del registro sin procesar. |
LoginHistoryId |
- | No está asignado al objeto IDM. |
LoginKey |
principal.user.userid , network.session_id |
El valor de LoginKey del registro sin procesar o CreatedByContext para SetupAuditTrail. |
LoginTime |
timestamp |
El valor de LoginTime del registro sin procesar. |
LoginType |
security_result.description |
El valor de LoginType del registro sin procesar, o "Otra API de Apex" para LoginHistory con ApiType como "Socio de SOAP", o "Acceso remoto 2.0" para LoginHistory con Application como "SfdcSiqActivityPlatform". |
LoginUrl |
target.url , principal.url |
El valor de LoginUrl del registro sin procesar. |
LogFile |
principal.resource.attribute.labels |
El valor de LogFile del registro sin procesar, con el formato de una etiqueta. |
LogFileContentType |
principal.resource.attribute.labels |
El valor de LogFileContentType del registro sin procesar, con el formato de una etiqueta. |
LogFileLength |
principal.resource.attribute.labels |
El valor de LogFileLength del registro sin procesar, con el formato de una etiqueta. |
Message |
- | No está asignado al objeto IDM. |
METHOD |
network.http.method |
El valor de METHOD del registro sin procesar. |
Name |
target.application |
El valor de Name del registro sin procesar. |
NewValue |
- | Se usa junto con OldValue para generar security_result.summary . |
NUMBER_FIELDS |
target.resource.attribute.labels |
El valor de NUMBER_FIELDS del registro sin procesar, con el formato de una etiqueta. |
OldValue |
- | Se usa junto con NewValue para generar security_result.summary . |
Operation |
security_result.description , target.resource.attribute.labels |
El valor de Operation del registro sin procesar o Display para SetupAuditTrail. |
OperationStatus |
security_result.action |
El valor de OperationStatus del registro sin procesar, transformado en ALLOW o BLOCK. |
ORGANIZATION_ID |
target.administrative_domain |
El valor de ORGANIZATION_ID del registro sin procesar. |
OsName |
principal.platform |
El valor de OsName del registro sin procesar. |
OsVersion |
principal.platform_version |
El valor de OsVersion del registro sin procesar. |
Platform |
principal.platform |
El valor de Platform del registro sin procesar, de data.properties.OsName.str para LightningUriEventStream o de data.properties.OsName.str para LoginEventStream. |
QueriedEntities |
target.resource.name , principal.labels |
El valor de QueriedEntities del registro sin procesar o component_name para UriEvent y ApiEvent. |
Query |
target.process.command_line , principal.labels |
El valor de Query del registro sin procesar. |
RecordId |
target.resource.id |
El valor de RecordId del registro sin procesar. |
Records |
principal.labels |
El valor de Records del registro sin procesar, con el formato de una etiqueta. |
REQUEST_ID |
metadata.product_log_id , target.resource.product_object_id |
El valor de REQUEST_ID del registro sin procesar. |
REQUEST_SIZE |
network.sent_bytes |
El valor de REQUEST_SIZE del registro sin procesar. |
REQUEST_STATUS |
security_result.summary |
El valor de REQUEST_STATUS del registro sin procesar. |
RESPONSE_SIZE |
network.received_bytes |
El valor de RESPONSE_SIZE del registro sin procesar. |
RowsProcessed |
target.resource.attribute.labels |
El valor de RowsProcessed del registro sin procesar, con el formato de una etiqueta. |
RUN_TIME |
target.resource.attribute.labels |
El valor de RUN_TIME del registro sin procesar, con el formato de una etiqueta. |
SamlEntityUrl |
- | No está asignado al objeto IDM. |
SdkAppType |
- | No está asignado al objeto IDM. |
SdkAppVersion |
- | No está asignado al objeto IDM. |
SdkVersion |
- | No está asignado al objeto IDM. |
Section |
security_result.summary |
El valor de Section del registro sin procesar. |
SessionKey |
network.session_id |
El valor de SessionKey del registro sin procesar. |
SessionLevel |
target.resource.attribute.labels |
El valor de SessionLevel del registro sin procesar, con el formato de una etiqueta. |
SourceIp |
principal.ip , principal.asset.ip |
El valor de SourceIp del registro sin procesar. |
src |
principal.ip , principal.asset.ip |
El valor de src del registro sin procesar. |
SsoType |
target.resource.attribute.labels |
El valor de SsoType del registro sin procesar, con el formato de una etiqueta. |
STATUS_CODE |
network.http.response_code |
El valor de STATUS_CODE del registro sin procesar. |
Status |
security_result.action , security_result.action_details |
El valor de Status del registro sin procesar, transformado en ALLOW o BLOCK, o utilizado como detalles de la acción para LoginEventStream. |
Subject |
target.resource.name |
El valor de Subject del registro sin procesar. |
TargetUrl |
- | No está asignado al objeto IDM. |
TIMESTAMP |
metadata.collected_timestamp |
El valor de TIMESTAMP del registro sin procesar. |
TIMESTAMP_DERIVED |
timestamp |
El valor de TIMESTAMP_DERIVED del registro sin procesar. |
TlsProtocol |
network.tls.version_protocol |
El valor de TlsProtocol del registro sin procesar. |
URI |
target.url |
El valor de URI del registro sin procesar. |
USER_AGENT |
network.http.user_agent |
El valor de USER_AGENT del registro sin procesar. |
USER_ID |
principal.user.userid |
El valor de USER_ID del registro sin procesar. |
USER_ID_DERIVED |
principal.user.product_object_id , target.resource.attribute.labels |
El valor de USER_ID_DERIVED del registro sin procesar. |
UserId |
principal.user.userid |
El valor de UserId del registro sin procesar. |
USER_TYPE |
target.resource.attribute.labels |
El valor de USER_TYPE del registro sin procesar, con el formato de una etiqueta. |
Username |
principal.user.userid , principal.user.email_addresses , target.user.email_addresses |
El valor de Username del registro sin procesar, src_email para varios eventos, IdentityUsed para IdentityProviderEventStore, data.properties.Email.str para Search y SearchAlert, o data.properties.Username.str para LoginAsEventStream y LoginEventStream. |
UserType |
target.resource.attribute.labels |
El valor de UserType del registro sin procesar, con el formato de una etiqueta. |
usrName |
principal.user.userid , principal.user.email_addresses , target.user.email_addresses |
El valor de usrName del registro sin procesar. |
VerificationMethod |
target.resource.attribute.labels |
El valor de VerificationMethod del registro sin procesar, con el formato de una etiqueta. |
Lógica del analizador | metadata.event_type |
Se deriva en función de los campos event_id y operation , o se establece en "USER_LOGIN" para LoginEventStream, "USER_LOGOUT" para Logout y LogoutEvent, "USER_RESOURCE_UPDATE_CONTENT" para varios 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 y TimeBasedWorkflow con Operation como "Create" o "INSERT", "RESOURCE_WRITTEN" para UriEvent y LightningUriEvent con Operation como "Update", "RESOURCE_DELETION" para UriEvent con Operation como "Delete" o "ROLLBACK", "USER_UNCATEGORIZED" para SetupAuditTrail y AuditTrail, "USER_CHANGE_PASSWORD" para SetupAuditTrail con operation como "namedCredentialEncryptedFieldChange", "GENERIC_EVENT" para ApiEventStream y LightningUriEventStream, o en función de la presencia de la red y el principal. |
Lógica del analizador | metadata.ingestion_labels |
Etiquetas que indican la fuente del evento, ya sea "Archivo de registro de eventos", "Supervisión de eventos en tiempo real" o "SetupAuditTrail". |
Lógica del analizador | metadata.log_type |
Siempre se establece en "SALESFORCE". |
Lógica del analizador | metadata.product_name |
Siempre se establece en "SALESFORCE". |
Lógica del analizador | metadata.vendor_name |
Siempre se establece en "SALESFORCE". |
Lógica del analizador | metadata.url_back_to_product |
Se construye a partir de varios campos, como LoginUrl , attributes.url , data.properties.PageUrl.str y data.properties.LoginUrl.str . |
Lógica del analizador | network.application_protocol |
Establece el valor en "HTTPS" si el campo uri comienza con "http". |
Lógica del analizador | network.http.referral_url |
Se extrae del campo user_agent si contiene "Referer=". |
Lógica del analizador | network.http.response_code |
Se deriva de request_status para varios eventos. |
Lógica del analizador | network.http.user_agent |
El valor de user_agent del registro sin procesar, o de data.properties.UserAgent.str para ApiEventStream y LoginEventStream, o de los eventos Sites , o "User-Agent" de los eventos Sites . |
Lógica del analizador | network.session_id |
El valor de session_key o SESSION_KEY del registro sin procesar, o bien construido a partir de otros campos, como LoginKey o AuthSessionId |
Lógica del analizador | network.tls.version |
El valor de tls_protocol del registro sin procesar o de data.properties.TlsProtocol.str para LoginEventStream. |
Lógica del analizador | principal.application |
El valor de application del registro sin procesar, "Salesforce for Outlook" para los eventos de acceso correcto o "Información" para los eventos de acceso correcto sin aplicación, o extraído de device_platform para los eventos de Lightning |
Lógica del analizador | principal.asset.hostname |
El valor de client_ip si es un nombre de host. |
Lógica del analizador | principal.asset.ip |
El valor de client_ip , src_ip , SourceIp o CLIENT_IP si se trata de una dirección IP. |
Lógica del analizador | principal.hostname |
El valor de client_ip si es un nombre de host. |
Lógica del analizador | principal.ip |
El valor de client_ip , src_ip , SourceIp o CLIENT_IP si se trata de una dirección IP. |
Lógica del analizador | principal.labels |
Etiquetas construidas a partir de varios campos, como FederationIdentifier , ApiType , OrgId y channel . |
Lógica del analizador | principal.location.city |
El valor de geoip_src.city_name , City o LoginGeo.City del registro sin procesar |
Lógica del analizador | principal.location.country_or_region |
El valor de geoip_src.country_name , Country , LoginGeo.Country o client_geo del registro sin procesar |
Lógica del analizador | principal.location.region_latitude |
El valor de data.properties.LoginLatitude.number del registro sin procesar. |
Lógica del analizador | principal.location.region_longitude |
El valor de data.properties.LoginLongitude.number del registro sin procesar. |
Lógica del analizador | principal.location.state |
El valor de geoip_src.region_name del registro sin procesar. |
Lógica del analizador | principal.platform |
El valor de Platform , OsName o os_name del registro sin procesar, o "WINDOWS" para LoginEventStream con Platform que contiene "Windows". |
Lógica del analizador | principal.platform_version |
El valor de OsVersion o os_version del registro sin procesar, o extraído de Platform para LoginEventStream con Platform que contiene "Windows". |
Lógica del analizador | principal.resource.attribute.labels |
Etiquetas construidas a partir de varios campos, como CreatedById , ApiVersion , LogFile , LogFileContentType y LogFileLength . |
Lógica del analizador | principal.resource.name |
El valor de Browser o browser_name del registro sin procesar, o "Java (Salesforce.com)" para LoginHistory con ApiType como "Socio de SOAP" |
Lógica del analizador | principal.resource.type |
Se extrae de device_platform para eventos de Lightning o de "Browser" para LoginAsEvent y LoginAsEventStream. |
Lógica del analizador | principal.url |
El valor de LoginUrl del registro sin procesar. |
Lógica del analizador | principal.user.email_addresses |
El valor de usrName , Username , src_email , IdentityUsed , data.properties.Username.str o data.properties.Email.str del registro sin procesar |
Lógica del analizador | principal.user.product_object_id |
El valor de attrs.USER_ID_DERIVED o data.properties.USER_ID_DERIVED.str del registro sin procesar |
Lógica del analizador | principal.user.userid |
El valor de usrName , Username , user_id , UserId , USER_ID , Id , LoginKey , CreatedByContext , data.properties.Username.str , data.properties.USER_ID.str o data.properties.LoginKey.str del registro sin procesar |
Lógica del analizador | security_result.action |
Se deriva de Status , OperationStatus , ErrorCode , action o operation_status del registro sin procesar y se transforma en ALLOW o BLOCK. |
Lógica del analizador | security_result.action_details |
El valor de Status del registro sin procesar de LoginEventStream. |
Lógica del analizador | security_result.description |
El valor de LoginType , logintype , Operation , Action o Display del registro sin procesar |
Lógica del analizador | security_result.rule_name |
El valor de Policy o rule_name del registro sin procesar |
Lógica del analizador | security_result.summary |
Se construye a partir de NewValue y OldValue , o REQUEST_STATUS , o Section , o forecastcategory del registro sin procesar. |
Lógica del analizador | target.administrative_domain |
El valor de ORGANIZATION_ID , DelegatedOrganizationId , organization_id o data.properties.OrgName.str del registro sin procesar |
Lógica del analizador | target.application |
El valor de Application , app_name , ApiType , Name o data.properties.Application.str del registro sin procesar |
Lógica del analizador | target.asset.hostname |
El valor de target_hostname extraído del campo uri . |
Lógica del analizador | target.asset.ip |
El valor de data.properties.CLIENT_IP.str del registro sin procesar. |
Lógica del analizador | target.asset_id |
Se construye a partir de device_id o REQUEST_ID . |
Lógica del analizador | target.file.mime_type |
El valor de file_type del registro sin procesar. |
Lógica del analizador | target.file.size |
El valor de size_bytes del registro sin procesar. |
Lógica del analizador | target.hostname |
El valor de target_hostname extraído del campo uri . |
Lógica del analizador | target.process.command_line |
El valor de query_exec , Query o data.properties.Query.str del registro sin procesar |
Lógica del analizador | target.process.pid |
El valor de job_id del registro sin procesar. |
Lógica del analizador | target.resource.attribute.labels |
Etiquetas construidas a partir de varios 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 del analizador | target.resource.id |
El valor de REQUEST_ID , RecordId , caseid , leadid , contactid , opportunityid o accountid del registro sin procesar |
Lógica del analizador | target.resource.name |
El valor de QueriedEntities , resource_name , component_name , DATASET_IDS , field , StageName o Subject del registro sin procesar |
Lógica del analizador | target.resource.product_object_id |
El valor de REQUEST_ID del registro sin procesar. |
Lógica del analizador | target.resource.resource_type |
Establece el valor en "ACCESS_POLICY" para ApexCallout y PlatformEncryption, o en "DATABASE" para ApexTrigger, o en "FILE" para ContentTransfer, o en "TABLE" para ApiEvent. |
Lógica del analizador | target.resource.type |
Se establece en "BATCH" para QueuedExecution y ApexExecution, o "FILE" para ContentTransfer, o "DATABASE_TRIGGER" para ApexTrigger, o "Case", "Lead", "Contact", "Opportunity", "Account" según la presencia de los campos de ID correspondientes. |
Lógica del analizador | target.url |
El valor de LoginUrl , URI , attributes.url , login_url o uri del registro sin procesar |
Lógica del analizador | target.user.email_addresses |
El valor de Username , attrs.usrName o email_address del registro sin procesar |
Lógica del analizador | target.user.user_display_name |
El valor de target_user_display_name , user_name o username del registro sin procesar |
Lógica del analizador | target.user.userid |
El valor de target_user_name , data.properties.UserId.str o data.properties.CreatedById.str del registro sin procesar |
Lógica del analizador | extensions.auth.auth_details |
Establece el valor en "ACTIVE" si Status no es "Success"; de lo contrario, establece el valor en "UNKNOWN_AUTHENTICATION_STATUS". |
Lógica del analizador | extensions.auth.mechanism |
Establece el valor en "REMOTE" para los eventos de acceso: éxito y acceso con logintype que contiene "Remote", o "USERNAME_PASSWORD" para LoginEventStream, o "MECHANISM_OTHER" para eventos con login_url presente, o "AUTHTYPE_UNSPECIFIED" para los eventos de acceso: éxito y salida. |
Lógica del analizador | extensions.auth.type |
Configúralo como "SSO" para Login, Logout, LogoutEvent, LoginAs, IdentityProviderEventStore, LoginHistory y LoginAsEvent con LoginType como "SAML Sfdc Initiated SSO" o "AUTHTYPE_UNSPECIFIED" para Login: Success, Logout y LoginAsEvent con LoginType como "Application". |
Cambios
2024-06-04
- Se agregó compatibilidad con registros recién transferidos.
2024-03-06
- Se cambió la asignación del campo "Id" de "metadata.product_log_id" a "principal.user.userid".
- Se cambió la asignación del campo "CreatedById" de "principal.user.userid" a "principal.resource.attribute.labels".
- Se asignó "IsDeleted" a "principal.resource.attribute.labels".
- Se asignó "LogFileLength" a "principal.resource.attribute.labels".
- Se asignó "LogFileContentType" a "principal.resource.attribute.labels".
- Se asignó "ApiVersion" a "principal.resource.attribute.labels".
- Se asignó "LogFile" a "principal.resource.attribute.labels".
2023-02-24
- Enhancement-
- "security_result.action" asignado a ALLOW en lugar de BLOCK si la acción es "LOGIN_NO_ERROR".
- Para los eventos "Login", haz lo siguiente :
- "action" se asignó a "security_result.action".
- "target_user_name" se asignó a "target.user.userid".
- "tls_protocol" se asignó a "network.tls.version_protocol".
- "cipher_suite" se asignó a "network.tls.cipher".
- Se agregó la verificación "on_error" para el bloque "OsVersion" y "date".
2022-12-13
- Enhancement-
- Se asignó "LoginType" a "security_result.description".
- Se asignó "LoginUrl" a "principal.url".
- Se agregó una verificación de campo vacío para "ApiType" y "LoginGeo.City".
2022-09-02
- Enhancement-
- Se migraron los analizadores personalizados al analizador predeterminado.
2022-07-04
- Enhancement-
- Se mejoró el analizador para analizar los registros que tienen event_type "LoginHistory".
- Se agregó una condición para analizar diferentes formatos de marca de tiempo.
- Se agregó una condición para event_type 'USER_UNCATEGORIZED' en la que 'user_id', 'UserId' o 'target_user_name' no son nulos.
- Se agregó la validación para analizar src_ip.
2022-04-18
- Se modificó el mapeo de mejora para DOWNLOAD_FORMAT de "metadata.ingestion_labels" a "target.resource.attribute.labels".
2022-03-30
- Mejora: Se cambió el valor de event_type de "LoginEventStream" a USER_LOGIN.
- Se corrigió la asignación de los campos DOWNLOAD_FORMAT y ConnectedAppId.
- Se agregaron asignaciones para ciertos campos cuando el registro es de tipo LoginEventStream, WaveDownload o ApiEventStream.