Configura un webhook de SIEM
Antes de comenzar
- Asegúrate de que se haya configurado un proyecto deGoogle Cloud para Google SecOps y de que la API de Chronicle esté habilitada para el proyecto.
Vincula una instancia de Google SecOps a los servicios de Google Cloud .
Cómo usar los ejemplos de la línea de comandos
Este documento incluye ejemplos de comandos de curl para ayudarte a configurar y probar tu feed de webhook. En estos ejemplos, se usan variables de marcador de posición editables. Para usarlos de forma eficaz, haz lo siguiente:
Edita las variables: A medida que sigas los pasos de configuración, obtendrás valores para el extremo del webhook, una clave de API y un secreto. Haz clic en las variables de marcador de posición en el código de muestra y reemplázalas por tus valores reales:
ENDPOINT_URL: Es la URL del extremo del feed que obtuviste cuando creaste un feed de webhook HTTPS.API_KEY: Es la clave de API que creaste para el feed del webhook para autenticarte en Google SecOps.SECRET: Es la clave secreta que se generó cuando creaste un feed de webhook HTTPS.
Si editas una variable en una muestra de código, se actualizará en todos los ejemplos de esta página.
Copia el comando: Haz clic en el ícono de copiar la muestra de código en el bloque de código.
Ejecuta el comando: Pega el comando copiado en tu entorno de terminal y ejecútalo.
Asegúrate de que el comando
curlincluya la marca--fail(o-f). Esto garantiza quecurldevuelva un código de salida distinto de cero si falla la solicitud HTTP y un código de salida de0para indicar que se realizó correctamente. Esto es necesario para el siguiente paso.Verifica el éxito: Si el comando
curlse ejecuta correctamente, no se muestra ningún resultado. Para confirmar que se realizó correctamente, haz lo siguiente:Si el comando
curlincluía la marca--fail(o-f), verifica el código de salida ejecutando el siguiente comando inmediatamente después:echo $?Un código de salida de
0indica que la operación se realizó correctamente.
Configura un feed de webhook HTTPS
Para configurar un feed de webhook HTTPS, haz lo siguiente:
- Crea un feed de webhook HTTPS y copia la URL del extremo y la clave secreta.
- Crea una clave de API para usar con la URL del extremo. También puedes reutilizar tu clave de API existente para autenticarte en Google SecOps.
- Especifica la URL del extremo en tu aplicación.
Envía varios eventos en una sola solicitud de webhook
En el siguiente ejemplo de muestra de código, se muestra cómo dar formato a un solo cuerpo de solicitud con varios objetos JSON separados por saltos de línea:
curl --location 'ENDPOINT_URL' \
--header 'Content-Type: application/json' \
--header 'X-goog-api-key: API_KEY' \
--header 'X-Webhook-Access-Key: SECRET' \
--data $'{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}\n{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}' \
--fail
Crea un feed de webhook HTTPS
- En el menú de Google SecOps, selecciona Configuración y, luego, haz clic en Feeds.
- Haz clic en Agregar nueva.
- En el campo Nombre del feed, ingresa un nombre para el feed.
- En la lista Tipo de fuente, selecciona Webhook.
- Selecciona el Tipo de registro. Por ejemplo, para crear un feed para Open Cybersecurity Schema Framework, selecciona Open Cybersecurity Schema Framework (OCSF) como el Tipo de registro.
- Haz clic en Siguiente.
- Opcional: Especifica valores para los siguientes parámetros de entrada:
- Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como
\n. - 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.
- Delimitador de división: Es el delimitador que se usa para separar las líneas de registro, como
- Haz clic en Siguiente.
- Revisa la nueva configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.
- Haz clic en Generate Secret Key para generar una clave secreta que autentique este feed.
- Copia y almacena la clave secreta, ya que no podrás volver a verla. Puedes generar una clave secreta nueva, pero, si lo haces, la clave secreta anterior quedará obsoleta.
- En la pestaña Detalles, copia la URL del extremo del feed del campo Información del extremo. Debes especificar esta URL de extremo en tu aplicación cliente.
- Opcional: Haz clic en el botón de activación Feed habilitado para inhabilitar el feed. El feed está habilitado de forma predeterminada.
- Haz clic en Listo.
Crea una clave de API para el feed de webhook
- Ve a la página Credenciales de la consola de Google Cloud .
- Haz clic en Crear credenciales y selecciona Clave de API.
- Restringe el acceso a la API de Chronicle con la clave de API.
Especifica la URL del extremo
- En tu aplicación cliente, especifica el extremo HTTPS disponible en el feed de webhook.
Para habilitar la autenticación, especifica la clave de API y la clave secreta como encabezados personalizados con el siguiente formato:
X-goog-api-key: API_KEY X-Webhook-Access-Key: SECRETTe recomendamos que especifiques la clave de API como un encabezado en lugar de hacerlo en la URL.
curl --location 'ENDPOINT_URL' \ --header 'Content-Type: application/json' \ --header 'X-goog-api-key: API_KEY' \ --header 'X-Webhook-Access-Key: SECRET' \ --data '{"principal": {"asset_id": "asset 123"}, "metadata": {"event_type": "GENERIC_EVENT", "product_name": "Product Acme"}}' \ --failSi tu cliente de webhook no admite encabezados personalizados, puedes especificar la clave de API y la clave secreta con parámetros de consulta en el siguiente formato:
ENDPOINT_URL?key=API_KEY&secret=SECRET
¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.