Recopila registros de acceso personalizados a la aplicación

Compatible con:

En este documento, se explica cómo transferir registros de acceso personalizado a la aplicación a Google Security Operations con métodos de transferencia de almacenamiento en la nube o de transmisión.

Los registros de acceso a aplicaciones personalizadas capturan eventos de autenticación, decisiones de autorización y patrones de acceso de aplicaciones patentadas o creadas de forma personalizada. Estos registros son esenciales para supervisar la actividad del usuario, detectar intentos de acceso no autorizados y mantener el cumplimiento de las políticas de seguridad.

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos previos:

  • Una instancia de Google SecOps
  • Registros de acceso a la aplicación personalizados en formato JSON, CSV o texto estructurado
  • Acceso a uno de los siguientes elementos:
    • Bucket de Google Cloud Storage (para la transferencia de GCS)
    • Bucket de Amazon S3 (para la transferencia de datos de S3)
    • Cuenta de Microsoft Azure Storage (para la transferencia de blobs de Azure)
    • Capacidad del extremo del webhook (para la transferencia basada en la inserción)
    • Amazon Kinesis Data Firehose (para la transferencia de datos de transmisión)

Crea un tipo de registro personalizado

El tipo de registro CUSTOM_APPLICATION_ACCESS no existe como analizador compilado previamente en Google SecOps. Debes crear un tipo de registro personalizado antes de transferir registros.

  1. Ve a Configuración de SIEM > Tipos de registros disponibles.
  2. Haz clic en Solicitar un tipo de registro.
  3. En Crea un tipo de registro personalizado por tu cuenta, ingresa los siguientes detalles:
    • Proveedor/Producto: Ingresa Custom Application Access Logs
    • Tipo de registro: Ingresa CUSTOM_APPLICATION_ACCESS.
  4. Haz clic en Crear tipo de registro.

  5. Espera 10 minutos para asegurarte de que el nuevo tipo de registro esté disponible en todos los componentes antes de crear feeds.

Elige tu método de transferencia

Selecciona el método de transferencia que mejor se adapte a tu infraestructura:

  • Google Cloud Storage (GCS): Úsalo si tu aplicación escribe registros en buckets de GCS o si puedes exportar registros a GCS.
  • Amazon S3: Úsalo si tu aplicación escribe registros en buckets de S3 o si puedes exportar registros a S3
  • Azure Blob Storage: Úsalo si tu aplicación escribe registros en Azure Storage o si puedes exportar registros a Azure.
  • Webhook: Úsalo si tu aplicación puede enviar solicitudes HTTP POST a un extremo externo.
  • Amazon Kinesis Data Firehose: Úsalo si tu aplicación escribe en CloudWatch Logs o si necesitas transmisión en tiempo real.

Opción 1: Transferir datos desde Google Cloud Storage

Crea un bucket de Google Cloud Storage

  1. Ve a Google Cloud Console.
  2. Selecciona tu proyecto o crea uno nuevo.
  3. En el menú de navegación, ve a Cloud Storage > Buckets.
  4. Haz clic en Crear bucket.
  5. Proporciona los siguientes detalles de configuración:

    Configuración Valor
    Asigna un nombre a tu bucket Ingresa un nombre global único (por ejemplo, custom-app-access-logs).
    Tipo de ubicación Elige según tus necesidades (región, birregional, multirregional)
    Ubicación Selecciona la ubicación (por ejemplo, us-central1).
    Clase de almacenamiento Estándar (recomendado para los registros a los que se accede con frecuencia)
    Control de acceso Uniforme (recomendado)
    Herramientas de protección Opcional: Habilita el control de versiones de objetos o la política de retención
  6. Haz clic en Crear.

Configura tu aplicación para escribir registros en GCS

Configura tu aplicación personalizada para que escriba registros de acceso en el bucket de GCS que creaste. Los registros deben escribirse en uno de los siguientes formatos:

  • Formato JSON (recomendado):

    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45", "application": "custom-app", "resource": "/api/users"}
    
  • Formato CSV:

    timestamp,user,action,result,source_ip,application,resource
    2025-01-15T10:30:00Z,john.doe@example.com,login,success,203.0.113.45,custom-app,/api/users
    
  • JSON delimitado por saltos de línea (NDJSON):

    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success"}
    {"timestamp": "2025-01-15T10:30:05Z", "user": "jane.smith@example.com", "action": "access", "result": "denied"}
    

Recupera la cuenta de servicio de Google SecOps

Las Operaciones de seguridad de Google usan una cuenta de servicio única para leer datos de tu bucket de GCS. Debes otorgar acceso a tu bucket a esta cuenta de servicio.

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. Haz clic en Configura un feed único.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Custom Application Access Logs - GCS).
  5. Selecciona Google Cloud Storage V2 como el Tipo de fuente.
  6. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  7. Haz clic en Obtener cuenta de servicio.
  8. Se mostrará un correo electrónico único de la cuenta de servicio, por ejemplo:

    chronicle-12345678@chronicle-gcp-prod.iam.gserviceaccount.com
    
  9. Copia esta dirección de correo electrónico para usarla en el siguiente paso.

Otorga permisos de IAM a la cuenta de servicio de Google SecOps

La cuenta de servicio de Google SecOps necesita el rol de visualizador de objetos de almacenamiento en tu bucket de GCS.

  1. Ve a Cloud Storage > Buckets.
  2. Haz clic en el nombre de tu bucket.
  3. Ve a la pestaña Permisos.
  4. Haz clic en Otorgar acceso.
  5. Proporciona los siguientes detalles de configuración:
    • Agregar principales: Pega el correo electrónico de la cuenta de servicio de Google SecOps.
    • Asignar roles: Selecciona Visualizador de objetos de Storage.
  6. Haz clic en Guardar.

Configura el feed en Google SecOps

  1. Regresa a la página de creación de feeds (o ve a Configuración de SIEM > Feeds > Agregar feed nuevo).
  2. Haz clic en Siguiente.
  3. Especifica valores para los siguientes parámetros de entrada:

    • URL del bucket de almacenamiento: Ingresa el URI del bucket de GCS con la ruta de acceso del prefijo:

      gs://custom-app-access-logs/
      
    • Opción de borrado de la fuente: Selecciona la opción de borrado según tu preferencia:

      • Nunca: Nunca borra ningún archivo después de las transferencias (se recomienda para las pruebas).
      • Borrar archivos transferidos: Borra los archivos después de una transferencia exitosa.
      • Borrar los archivos transferidos y los directorios vacíos: Borra los archivos y los directorios vacíos después de la transferencia exitosa.
    • Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días más reciente (el valor predeterminado es 180 días).

    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.

    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed (por ejemplo, custom_app_access).

  4. Haz clic en Siguiente.

  5. Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.

Opción 2: Ingesta desde Amazon S3

Crea un bucket de Amazon S3

  1. Abre la consola de Amazon S3.
  2. Haga clic en Crear bucket.
  3. Proporciona los siguientes detalles de configuración:
    • Nombre del bucket: Ingresa un nombre significativo para el bucket (por ejemplo, custom-app-access-logs).
    • Región: Selecciona la región en la que se ejecuta tu aplicación (por ejemplo, us-east-1).
  4. Haz clic en Crear.

Crea un usuario de IAM con acceso a S3

  1. Abre la consola de IAM.
  2. Haz clic en Usuarios > Agregar usuario.
  3. Ingresa un nombre de usuario (por ejemplo, chronicle-s3-reader).
  4. Selecciona Acceso programático.
  5. Haz clic en Next: Permissions.
  6. Elige Adjuntar las políticas existentes de forma directa.
  7. Busca y selecciona la política AmazonS3FullAccess.
  8. Haz clic en Siguiente: Etiquetas.
  9. Haz clic en Siguiente: Revisar.
  10. Haz clic en Crear usuario.
  11. Haz clic en Descargar archivo .csv para guardar la clave de acceso y la clave de acceso secreta para consultarlas en el futuro.
  12. Haz clic en Cerrar.

Configura tu aplicación para escribir registros en S3

Configura tu aplicación personalizada para que escriba registros de acceso en el bucket de S3 que creaste. Usa los mismos formatos de registro que se describen en la sección de GCS (JSON, CSV o NDJSON).

Configura un feed en Google SecOps para transferir registros de S3

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. Haz clic en Configura un feed único.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Custom Application Access Logs - S3).
  5. Selecciona Amazon S3 V2 como el Tipo de fuente.
  6. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  7. Haz clic en Siguiente y, luego, en Enviar.
  8. Especifica valores para los siguientes parámetros de entrada:

    • URI de S3: Ingresa el URI del bucket en el siguiente formato:

      s3://custom-app-access-logs/
      
    • Opción de borrado de la fuente: Selecciona la opción de borrado según tu preferencia.

    • Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días más reciente (el valor predeterminado es 180 días).

    • ID de clave de acceso: Clave de acceso del usuario con acceso al bucket de S3.

    • Clave de acceso secreta: Clave secreta del usuario con acceso al bucket de S3.

    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.

    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed (por ejemplo, custom_app_access).

  9. Haz clic en Siguiente y, luego, en Enviar.

Opción 3: Ingesta desde Azure Blob Storage

Crear una cuenta de Azure Storage

  1. En el portal de Azure, busca Cuentas de almacenamiento.
  2. Haz clic en + Crear.
  3. Proporciona los siguientes detalles de configuración:

    Configuración Valor
    Suscripción Selecciona tu suscripción a Azure
    Grupo de recursos Selecciona una existente o crea una nueva
    Nombre de la cuenta de almacenamiento Ingresa un nombre único (por ejemplo, customappaccesslogs).
    Región Selecciona la región (por ejemplo, East US).
    Rendimiento Estándar (recomendado)
    Redundancia LRS (almacenamiento con redundancia local)
  4. Haz clic en Revisar + crear.

  5. Revisa el resumen de la cuenta y haz clic en Crear.

  6. Espera a que se complete la implementación.

Obtén credenciales de la cuenta de almacenamiento

  1. Ve a la cuenta de almacenamiento que acabas de crear.
  2. En la navegación de la izquierda, selecciona Claves de acceso en Seguridad y redes.
  3. Haz clic en Mostrar claves.
  4. Copia y guarda lo siguiente para usarlo más tarde:
    • Nombre de la cuenta de almacenamiento: customappaccesslogs
    • Clave 1 o Clave 2: Es la clave de acceso compartido.

Crea un contenedor de blobs

  1. En la misma cuenta de almacenamiento, selecciona Contenedores en la navegación de la izquierda.
  2. Haz clic en + Contenedor.
  3. Proporciona los siguientes detalles de configuración:
    • Nombre: Ingresa access-logs.
    • Nivel de acceso público: Selecciona Privado (sin acceso anónimo).
  4. Haz clic en Crear.

Configura tu aplicación para escribir registros en Azure Blob Storage

Configura tu aplicación personalizada para que escriba registros de acceso en el contenedor de Azure Blob Storage que creaste. Usa los mismos formatos de registro que se describen en la sección de GCS (JSON, CSV o NDJSON).

Configura un feed en Google SecOps para transferir registros desde Azure

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. Haz clic en Configura un feed único.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Custom Application Access Logs - Azure).
  5. Selecciona Microsoft Azure Blob Storage V2 como el Tipo de fuente.
  6. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  7. Haz clic en Siguiente.
  8. Especifica valores para los siguientes parámetros de entrada:

    • URI de Azure: Ingresa la URL del extremo del servicio Blob con la ruta de acceso del contenedor:

      https://customappaccesslogs.blob.core.windows.net/access-logs/
      
    • Opción de borrado de la fuente: Selecciona la opción de borrado según tu preferencia.

    • Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días más reciente (el valor predeterminado es 180 días).

    • Llave compartida: Ingresa el valor de la llave compartida (llave de acceso) que capturaste de la cuenta de almacenamiento.

    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.

    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed (por ejemplo, custom_app_access).

  9. Haz clic en Siguiente.

  10. Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.

Opción 4: Ingesta con Webhook

Crea un feed de webhook en Google SecOps

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. Haz clic en Configura un feed único.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Custom Application Access Logs - Webhook).
  5. Selecciona Webhook como el Tipo de origen.
  6. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  7. Haz clic en Siguiente.
  8. Especifica valores para los siguientes parámetros de entrada:
    • Delimitador de división: Ingresa \n para dividir eventos delimitados por saltos de línea (si envías varios eventos por solicitud).
    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.
    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed (por ejemplo, custom_app_access).
  9. Haz clic en Siguiente.
  10. Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.

Genera y guarda la clave secreta

  1. En la página de detalles del feed, haz clic en Generar clave secreta.
  2. Un diálogo muestra la clave secreta.
  3. Copia y guarda la clave secreta de forma segura.

Obtén la URL del extremo del feed

  1. Ve a la pestaña Detalles del feed.
  2. En la sección Endpoint Information, copia la URL del extremo del feed.
  3. El formato de la URL es el siguiente:

    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate
    
  4. Guarda esta URL para los próximos pasos.

  5. Haz clic en Listo.

Crea una clave de API de Google Cloud

Google SecOps requiere una clave de API para la autenticación. Crea una clave de API restringida en la Google Cloud Console.

  1. Ve a la página Credenciales de la consola de Google Cloud.
  2. Selecciona tu proyecto (el proyecto asociado con tu instancia de Chronicle).
  3. Haz clic en Crear credenciales > Clave de API.
  4. Se creará una clave de API y se mostrará en un diálogo.
  5. Haz clic en Editar clave de API para restringir la clave.
  6. En la página de configuración de la clave de API, haz lo siguiente:
    • Nombre: Ingresa un nombre descriptivo (por ejemplo, Chronicle Webhook API Key).
  7. En Restricciones de API, haz lo siguiente:
    1. Selecciona Restringir clave.
    2. En el menú desplegable Seleccionar APIs, busca y selecciona Google SecOps API (o Chronicle API).
  8. Haz clic en Guardar.
  9. Copia el valor de la clave de API del campo Clave de API en la parte superior de la página.
  10. Guarda la clave de API de forma segura.

Configura tu aplicación para enviar registros a través de un webhook

Configura tu aplicación personalizada para que envíe solicitudes HTTP POST al extremo del webhook de Chronicle.

  • Construye la URL del webhook:

    1. Agrega la clave de API a la URL del extremo del feed:

      https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=<API_KEY>
      
    2. Reemplaza <API_KEY> por la clave de API que creaste.

  • Formato de la solicitud POST:

    POST https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45"}
    
  • Para varios eventos (delimitados por saltos de línea):

    POST https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=<API_KEY> HTTP/1.1
    Content-Type: application/json
    x-chronicle-auth: <SECRET_KEY>
    
    {"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success"}
    {"timestamp": "2025-01-15T10:30:05Z", "user": "jane.smith@example.com", "action": "access", "result": "denied"}
    
  • Ejemplo de uso de curl:

    curl -X POST \
      "https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=YOUR_API_KEY" \
      -H "Content-Type: application/json" \
      -H "x-chronicle-auth: YOUR_SECRET_KEY" \
      -d '{"timestamp": "2025-01-15T10:30:00Z", "user": "john.doe@example.com", "action": "login", "result": "success", "source_ip": "203.0.113.45"}'
    

Opción 5: Transferencia con Amazon Kinesis Data Firehose

Crea un feed en Google SecOps

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. Haz clic en Configura un feed único.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Custom Application Access Logs - Firehose).
  5. Selecciona Amazon Data Firehose como el Tipo de fuente.
  6. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  7. Haz clic en Siguiente.
  8. Especifica valores para los siguientes parámetros de entrada:
    • Delimitador de división: Ingresa \n para dividir los registros delimitados por saltos de línea.
    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.
    • Etiquetas de transferencia: Es la etiqueta que se aplicará a los eventos de este feed (por ejemplo, custom_app_access).
  9. Haz clic en Siguiente.
  10. Revisa la configuración del feed y haz clic en Enviar.
  11. Haz clic en Generar clave secreta para generar una clave secreta que autentique este feed.
  12. Copia y guarda la clave secreta, ya que no podrás volver a verla.
  13. Ve a la pestaña Detalles.
  14. Copia la URL del extremo del feed del campo Información del extremo.
  15. Haz clic en Listo.

Crea una clave de API para el feed de Amazon Data Firehose

  1. Ve a la página Credenciales de la consola de Google Cloud en https://console.cloud.google.com/apis/credentials.
  2. Haz clic en Crear credenciales y selecciona Clave de API.
  3. Haz clic en Editar clave de API para restringir la clave.
  4. En Restricciones de API, selecciona Restringir clave.
  5. Busca y selecciona la API de Google SecOps.
  6. Haz clic en Guardar.
  7. Copia y guarda la clave de API.

Construye la URL del extremo

  1. Agrega la clave de API a la URL del extremo del feed con el siguiente formato:

    <FEED_ENDPOINT_URL>?key=<API_KEY>
    
  2. Reemplaza lo siguiente:

    • <FEED_ENDPOINT_URL>: URL del extremo del feed en un paso anterior
    • <API_KEY>: La clave de API del paso anterior

    Ejemplo:

    https://malachiteingestion-pa.googleapis.com/v2/unstructuredlogentries:batchCreate?key=AIzaSyD...
    
  3. Guarda esta URL completa para el siguiente paso.

Crea una política de IAM para Firehose

  1. En la consola de AWS, ve a la pestaña IAM > Políticas > Crear política > JSON.
  2. Pega el siguiente JSON de la política:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "firehose:PutRecord",
                    "firehose:PutRecordBatch"
                ],
                "Resource": "arn:aws:firehose:us-east-1:123456789012:deliverystream/CustomAppAccessToChronicle"
            }
        ]
    }
    
  3. Reemplaza lo siguiente:

    • us-east-1: Tu región de AWS
    • 123456789012: Tu ID de cuenta de AWS (número de 12 dígitos)
    • CustomAppAccessToChronicle: El nombre de tu flujo de entrega de Firehose (lo crearás en el siguiente paso)
  4. Asigna a la política el nombre CustomAppAccessFirehoseWritePolicy.

  5. Haz clic en Crear política.

Crea un rol de IAM para CloudWatch Logs

  1. Ve a IAM > Roles > Crear rol.
  2. Selecciona Política de confianza personalizada y pega lo siguiente:

    {
        "Version": "2012-10-17",
        "Statement": [
            {
                "Effect": "Allow",
                "Principal": {
                    "Service": "logs.us-east-1.amazonaws.com"
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
    
  3. Reemplaza us-east-1 por tu región de AWS.

  4. Haz clic en Siguiente.

  5. Busca y selecciona la política CustomAppAccessFirehoseWritePolicy que creaste en el paso anterior.

  6. Haz clic en Siguiente.

  7. Asigna el nombre CloudWatchLogsToFirehoseRole al rol.

  8. Haz clic en Crear rol.

Crea un flujo de entrega de Kinesis Data Firehose

  1. En la consola de AWS, ve a Kinesis > Data Firehose > Create delivery stream.
  2. Proporciona los siguientes detalles de configuración:

    • Origen y destino:

      • Fuente: Selecciona Carga directa o fuentes externas
      • Destino: Selecciona Extremo HTTP.
    • Nombre del flujo de entrega:

      • Nombre del flujo de entrega: Ingresa CustomAppAccessToChronicle.
    • Destino del extremo HTTP:

      • URL del extremo HTTP: Ingresa la URL del extremo completa que creaste antes (extremo del feed + clave de API).
      • Codificación de contenido: Selecciona GZIP (recomendado para ahorrar ancho de banda).
    • Encabezados HTTP personalizados:

      • Haz clic en Agregar encabezado HTTP personalizado.
      • Nombre del encabezado: Ingresa X-Goog-Chronicle-Auth.
      • Valor del encabezado: Ingresa la clave secreta que guardaste en un paso anterior.
    • Configuración de copia de seguridad:

      • Copia de seguridad de registros de origen en Amazon S3: Selecciona Solo datos con errores (recomendado).
      • Bucket de S3: Selecciona un bucket existente o crea uno nuevo para los registros con errores.
    • Sugerencias de almacenamiento en búfer:

      • Tamaño del búfer: Ingresa 1 MiB (mínimo para los extremos HTTP).
      • Intervalo de búfer: Ingresa 60 segundos.
    • Duración del reintento:

      • Duración del reintento: Ingresa 300 segundos (5 minutos).
  3. Haz clic en Crear flujo de entrega.

  4. Espera a que el estado del flujo de entrega cambie a Activo (de 1 a 2 minutos).

Configura tu aplicación para escribir en CloudWatch Logs

Configura tu aplicación personalizada para escribir registros de acceso en un grupo de registros de CloudWatch. Luego, crea un filtro de suscripción para transmitir registros a Firehose.

  1. En la consola de AWS, ve a CloudWatch > Logs > Log groups.
  2. Crea un grupo de registros nuevo o selecciona uno existente en el que tu aplicación escriba registros.
  3. Haz clic en la pestaña Filtros de suscripción.
  4. Haz clic en Crear > Crear filtro de suscripción de Amazon Kinesis Data Firehose.
  5. Proporciona los siguientes detalles de configuración:

    • Destino: Selecciona el flujo de entrega CustomAppAccessToChronicle.
    • Otorga permiso: Selecciona el rol CloudWatchLogsToFirehoseRole.
    • Nombre del filtro de suscripción: Ingresa CustomAppAccessToChronicle.
    • Formato de registro: Selecciona Otro (Google SecOps se encarga del análisis).
    • Patrón de filtro de suscripción: Déjalo vacío para enviar todos los eventos.
  6. Haz clic en Iniciar transmisión.

  7. Los registros se transmiten en tiempo real a Google SecOps a través de Firehose.

Crea un analizador personalizado

Después de transferir los registros, debes crear un analizador personalizado para normalizar los datos en formato UDM.

  1. Ve a Configuración de SIEM > Analizadores.
  2. Haz clic en Crear analizador.
  3. Selecciona CUSTOM_APPLICATION_ACCESS_CUSTOM como el Tipo de registro.
  4. Usa el editor de analizador para crear patrones de Grok o extensiones de analizador que asignen tus campos de registro a los campos de UDM.

    Ejemplo de asignación del analizador:

    Campo de registro personalizado Campo de UDM
    timestamp metadata.event_timestamp
    user principal.user.email_addresses
    action security_result.action
    result security_result.summary
    source_ip principal.ip
    application target.application
    resource target.resource.name
  5. Prueba el analizador con registros de muestra.

  6. Haz clic en Guardar para activar el analizador.

Para obtener instrucciones detalladas sobre cómo crear un analizador, consulta Opciones de analizadores de autoservicio.

Verifica la transferencia

Después de configurar el feed y el analizador, verifica que se estén transfiriendo los registros:

  1. Ve a Búsqueda > Búsqueda de UDM.
  2. Ejecute la siguiente consulta:

    metadata.log_type = "CUSTOM_APPLICATION_ACCESS_CUSTOM"
    
  3. Verifica que los eventos aparezcan en los resultados de la búsqueda.

  4. Verifica que los campos del UDM se propaguen correctamente según la configuración del analizador.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
adicional Se fusionó con etiquetas creadas a partir de service, env, msg.attachment.fileName, msg.attachment.digest, msg.attachment.key, msg.attachment.authorizeId, msg.attachment.contentType, dest.type, type, msg.sortID, msg.refID, state.reported.applications_installed, state.reported.applications_status, state.reported.ota_queue, state.reported.VICMB_Deg_Battery_LimpHome, state.reported.VICMB_Inhibit_Propulsion, state.reported.VICMB_FA_LostComm_BPCM, state.reported.VICMB_FA_LostComm_SFAM1, state.reported.VICMB_Inhibit_HV, state.reported.VICMB_FA_LostComm_RIDM, state.reported.VICMB_FA_LostComm_RWAM1, state.reported.uname, meta.reported.battery_charging_rate_kw.timestamp, state.reported.battery_charging_rate_kw, meta.reported.cell.connected.timestamp, meta.reported.cell.packet_loss.timestamp, meta.reported.cell.average_ping_ms.timestamp, meta.reported.cell.bitrate.timestamp, meta.reported.cell.download_speed_bytes_per_sec.timestamp, meta.reported.cell.signal_strength.timestamp, meta.reported.cell.signal.timestamp, state.reported.cell.connected, state.reported.cell.packet_loss, state.reported.cell.average_ping_ms, state.reported.cell.bitrate, state.reported.cell.download_speed_bytes_per_sec, state.reported.cell.signal_strength, state.reported.cell.signal
request_time metadata.collected_timestamp Se analizó a partir de request_time con el formato ISO8601.
msg_1, msg.body metadata.description Valor de msg_1 si no está vacío; de lo contrario, msg.body
user_id, src_email, otadata.1687965118.initiator metadata.event_type Se establece en "USER_UNCATEGORIZED" si están presentes user_id, src_email o otadata.1687965118.initiator; de lo contrario, se establece en "GENERIC_EVENT".
otadata.1687965118.deployment_id metadata.product_deployment_id Valor copiado directamente
version metadata.product_version Valor copiado directamente
response.status network.http.response_code Se convirtió a número entero
request_id principal.resource.product_object_id Valor copiado directamente
msg.attachment.url, otadata.1687965118.download_url principal.url Valor de msg.attachment.url si no está vacío; de lo contrario, otadata.1687965118.download_url
src_email, otadata.1687965118.initiator principal.user.email_addresses Valor de src_email si coincide con la regex de correo electrónico; de lo contrario, se toma de otadata.1687965118.initiator
user_id principal.user.userid Valor copiado directamente
level security_result.severity Se establece en "INFORMATIONAL" si el nivel es "INFO".
metadata.product_name Establece el parámetro en "Acceso personalizado a la aplicación".
metadata.vendor_name Establece el parámetro en "Acceso personalizado a la aplicación".

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.