Recopila registros de actividad de Microsoft Graph
Descripción general
Este analizador extrae campos de los registros de actividad de Microsoft Graph y los transforma en el modelo de datos unificado (UDM). Inicializa los campos del UDM, analiza la carga útil, extrae las marcas de tiempo, asigna varias propiedades a los campos del UDM, controla las direcciones IP y los puertos, y categoriza el tipo de evento según la presencia de información principal y de red.
Antes de comenzar
Asegúrate de cumplir con los siguientes requisitos previos:
- Instancia de Google SecOps.
 - Acceso con privilegios a Microsoft Entra ID y a las cuentas de almacenamiento de Azure
 
Configura la cuenta de almacenamiento de Azure
- En la consola de Azure, busca cuentas de almacenamiento.
 - Haz clic en Crear.
 - Especifica valores para los siguientes parámetros de entrada:
- Suscripción: Selecciona la suscripción.
 - Grupo de recursos: Selecciona el grupo de recursos.
 - Región: Selecciona la región.
 - Rendimiento: Selecciona el nivel de rendimiento que desees (se recomienda el estándar).
 - Redundancia: Selecciona el nivel de redundancia que desees (se recomienda GRS o LRS).
 - Nombre de la cuenta de almacenamiento: Ingresa un nombre para la nueva cuenta de almacenamiento.
 
 - Haz clic en Revisar + crear.
 - Revisa el resumen de la cuenta y haz clic en Crear.
 - En la página Descripción general de la cuenta de almacenamiento, selecciona el submenú Claves de acceso en Seguridad y redes.
 - Haz clic en Mostrar junto a key1 o key2.
 - Haz clic en Copiar en el portapapeles para copiar la clave.
 - Guarda la llave en un lugar seguro para consultarla en el futuro.
 - En la página Resumen de la cuenta de almacenamiento, selecciona el submenú Extremos en Configuración.
 - Haz clic en Copiar en el portapapeles para copiar la URL del extremo del servicio Blob (por ejemplo, https://
.blob.core.windows.net ). - Guarda la URL del extremo en una ubicación segura para consultarla en el futuro.
 
Configura la exportación de registros de actividad de Microsoft Graph a la cuenta de almacenamiento
- En la consola de Azure, busca Entra ID.
 - Selecciona Supervisión > Configuración de diagnóstico.
 - Haz clic en + Agregar parámetro de configuración de diagnóstico.
 - Asigna un nombre único al parámetro de configuración (por ejemplo, ms-graph-activity).
 - Selecciona la categoría MicrosoftGraphActivityLog que deseas exportar a Google SecOps.
 - En Detalles del destino, selecciona Archivar en una cuenta de almacenamiento.
 - Selecciona tu suscripción y la cuenta de almacenamiento que creaste en el paso anterior.
 - Haz clic en Guardar.
 
Cómo configurar los registros de actividad de Microsoft Graph
- Ve a Configuración del SIEM > Feeds.
 - Haz clic en Agregar feed nuevo.
 - En la siguiente página, haz clic en Configurar un solo feed.
 - En el campo Nombre del feed, ingresa un nombre para el feed, por ejemplo, Registros de actividad de Microsoft Graph.
 - Selecciona Microsoft Azure Blob Storage V2 como el Tipo de fuente.
 - Selecciona Registros de actividad de Microsoft Graph como el Tipo de registro.
 - Haz clic en Siguiente.
 Especifica valores para los siguientes parámetros de entrada:
URI de Azure: Es la URL del extremo del blob.
ENDPOINT_URL/BLOB_NAMEReemplaza lo siguiente:
ENDPOINT_URL: Es la URL del extremo del blob (https://<storageaccountname>.blob.core.windows.net).BLOB_NAME: El nombre del blob (por ejemplo, insights-logs-) 
Opciones de borrado de la fuente: Selecciona la opción de borrado según tu preferencia.
- Antigüedad máxima del archivo: Son los archivos modificados en la cantidad de días especificada. El valor predeterminado es de 180 días.
 - Clave compartida: Es la clave de acceso a Azure Blob Storage.
 
Haz clic en Siguiente.
Revisa la nueva configuración del 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 | 
|---|---|---|
callerIpAddress | 
principal.asset.ip | 
El campo de registro sin procesar callerIpAddress se copia en el campo de UDM. | 
callerIpAddress | 
principal.ip | 
El campo de registro sin procesar callerIpAddress se copia en el campo de UDM. | 
category | 
security_result.category_details | 
El campo de registro sin procesar category se copia en el campo de UDM. | 
correlationId | 
security_result.detection_fields.value | 
El campo de registro sin procesar correlationId se copia en el campo de UDM, donde la clave es correlationId. | 
Level | 
security_result.detection_fields.value | 
El campo de registro sin procesar Level se convierte en una cadena y se copia en el campo de UDM, donde la clave es Level. | 
operationName | 
metadata.product_event_type | 
El campo de registro sin procesar operationName se copia en el campo de UDM. | 
operationVersion | 
additional.fields.value.string_value | 
El campo de registro sin procesar operationVersion se copia en el campo de UDM, donde la clave es operationVersion. | 
properties.apiVersion | 
metadata.product_version | 
El campo de registro sin procesar properties.apiVersion se copia en el campo de UDM. | 
properties.appId | 
target.resource.product_object_id | 
El campo de registro sin procesar properties.appId se copia en el campo de UDM. | 
properties.atContent | 
additional.fields.value.string_value | 
El campo de registro sin procesar properties.atContent se copia en el campo de UDM, donde la clave es atContent. | 
properties.clientAuthMethod | 
extensions.auth.auth_details | 
Según el valor de properties.clientAuthMethod, el campo UDM se establece en "Cliente público" (0), "ID de cliente/secreto de cliente" (1) o "Certificado de cliente" (2). | 
properties.clientRequestId | 
additional.fields.value.string_value | 
El campo de registro sin procesar properties.clientRequestId se copia en el campo de UDM, donde la clave es clientRequestId. | 
properties.durationMs | 
network.session_duration.seconds | 
El campo de registro sin procesar properties.durationMs se convierte de milisegundos a segundos y se copia en el campo de UDM. | 
properties.identityProvider | 
security_result.detection_fields.value | 
El campo de registro sin procesar properties.identityProvider se copia en el campo de UDM, donde la clave es identityProvider. | 
properties.ipAddress | 
principal.asset.ip | 
Se extrae la dirección IP del campo de registro sin procesar properties.ipAddress y se copia en el campo del UDM. | 
properties.ipAddress | 
principal.ip | 
Se extrae la dirección IP del campo de registro sin procesar properties.ipAddress y se copia en el campo del UDM. | 
properties.location | 
principal.location.name | 
El campo de registro sin procesar properties.location se copia en el campo de UDM. | 
properties.operationId | 
security_result.detection_fields.value | 
El campo de registro sin procesar properties.operationId se copia en el campo de UDM, donde la clave es operationId. | 
properties.requestMethod | 
network.http.method | 
El campo de registro sin procesar properties.requestMethod se copia en el campo de UDM. | 
properties.requestId | 
metadata.product_log_id | 
El campo de registro sin procesar properties.requestId se copia en el campo de UDM. | 
properties.responseSizeBytes | 
network.received_bytes | 
El campo de registro sin procesar properties.responseSizeBytes se convierte en un número entero sin signo y se copia en el campo de UDM. | 
properties.responseStatusCode | 
network.http.response_code | 
El campo de registro sin procesar properties.responseStatusCode se convierte en un número entero y se copia en el campo de UDM. | 
properties.roles | 
additional.fields.value.string_value | 
El campo de registro sin procesar properties.roles se copia en el campo de UDM, donde la clave es roles. | 
properties.scopes | 
additional.fields.value.string_value | 
El campo de registro sin procesar properties.scopes se copia en el campo de UDM, donde la clave es Scopes. | 
properties.servicePrincipalId | 
principal.user.userid | 
El campo de registro sin procesar properties.servicePrincipalId se copia en el campo de UDM si properties.userId está vacío. | 
properties.signInActivityId | 
network.session_id | 
El campo de registro sin procesar properties.signInActivityId se copia en el campo de UDM. | 
properties.tenantId | 
metadata.product_deployment_id | 
El campo de registro sin procesar properties.tenantId se copia en el campo de UDM. | 
properties.tokenIssuedAt | 
additional.fields.value.string_value | 
El campo de registro sin procesar properties.tokenIssuedAt se copia en el campo de UDM, donde la clave es tokenIssuedAt. | 
properties.userAgent | 
network.http.user_agent | 
El campo de registro sin procesar properties.userAgent se copia en el campo de UDM. | 
properties.userId | 
principal.user.userid | 
El campo de registro sin procesar properties.userId se copia en el campo de UDM. | 
properties.wids | 
security_result.detection_fields.value | 
El campo de registro sin procesar properties.wids se copia en el campo de UDM, donde la clave es wids. | 
resourceId | 
target.resource.attribute.labels.value | 
El campo de registro sin procesar resourceId se copia en el campo de UDM, donde la clave es Resource ID. | 
resultSignature | 
additional.fields.value.string_value | 
El campo de registro sin procesar resultSignature se copia en el campo de UDM, donde la clave es resultSignature. | 
time | 
metadata.event_timestamp | 
El campo de registro sin procesar time se analiza y se convierte en una marca de tiempo, y se copia en el campo de UDM. El campo event.idm.read_only_udm.metadata.event_type del UDM se establece en "NETWORK_HTTP" si has_principal es verdadero y network.http no está vacío, en "STATUS_UPDATE" si has_principal es verdadero y network.http está vacío, o en "GENERIC_EVENT" en cualquier otro caso. El campo de UDM está configurado como "Microsoft Graph". El campo de UDM está establecido como "Microsoft". | 
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.