Recopila registros de Datadog

Compatible con:

En este documento, se explica cómo transferir registros de Datadog a Google Security Operations. Datadog es una plataforma de supervisión y análisis basada en la nube que recopila métricas, registros y seguimientos de aplicaciones, infraestructura y servicios en la nube. Puedes compartir los registros de Datadog con Google SecOps a través de Cloud Storage o un webhook.

Antes de comenzar

Asegúrate de cumplir con los siguientes requisitos previos:

  • Una instancia de Google SecOps
  • Acceso de usuario con privilegios a Datadog
  • Acceso a la consola de Google Cloud (para la creación de claves de API o la configuración de Cloud Storage)

Opción 1: Compartir registros de Datadog a través de la configuración de Cloud Storage

Configura la integración de Datadog con Google Cloud

Configura una integración para Google Clouden Datadog. Para obtener más información, consulta la configuración de la integración de Datadog Google Cloud .

Crea un bucket de Cloud Storage

  1. Accede a la consola de Google Cloud .
  2. Ve a la página Buckets de Cloud Storage.

    Ir a Buckets

  3. Haz clic en Crear.

  4. En la página Crear un bucket, ingresa la información de tu bucket. Después de cada uno de los siguientes pasos, haz clic en Continuar para avanzar al siguiente paso:

    1. En la sección Primeros pasos, haz lo siguiente:

      1. Ingresa un nombre único que cumpla con los requisitos de nombres de bucket (por ejemplo, datadog-data).
      2. Para habilitar el espacio de nombres jerárquico, haz clic en la flecha de expansión para expandir la sección Optimizar las cargas de trabajo orientadas a archivos y con uso intensivo de datos y, luego, selecciona Habilitar el espacio de nombres jerárquico en este bucket.

      3. Para agregar una etiqueta de bucket, haz clic en la flecha de expansión para expandir la sección Etiquetas.

      4. Haz clic en Agregar etiqueta y especifica una clave y un valor para tu etiqueta.

    2. En la sección Eligir dónde almacenar tus datos, haz lo siguiente:

      1. Selecciona un tipo de ubicación
      2. Usa el menú desplegable del tipo de ubicación para seleccionar una Ubicación en la que se almacenarán de forma permanente los datos de objetos de tu bucket.
    3. En la sección Elige una clase de almacenamiento para tus datos, selecciona una clase de almacenamiento predeterminada para el bucket o selecciona Autoclass para la administración automática de clases de almacenamiento de los datos de tu bucket.

    4. En la sección Elige cómo controlar el acceso a los objetos, selecciona no para aplicar la prevención del acceso público y selecciona un modelo de control de acceso para los objetos del bucket.

    5. En la sección Elige cómo proteger los datos de objetos, haz lo siguiente:

      1. Selecciona cualquiera de las opciones de Protección de datos que desees configurar para tu bucket.
      2. Para elegir cómo se encriptarán los datos de tus objetos, haz clic en la flecha desplegable etiquetada como Encriptación de datos y selecciona un método de encriptación de datos.
  5. Haz clic en Crear.

Crea una Google Cloud cuenta de servicio

  1. Ve a IAM y administración > Cuentas de servicio.
  2. Cree una cuenta de servicio nueva
  3. Asigna un nombre descriptivo (por ejemplo, datadog-user).
  4. Otorga a la cuenta de servicio el rol de administrador de objetos de almacenamiento en el bucket de Cloud Storage que creaste en el paso anterior.
  5. Crea una clave para la cuenta de servicio y selecciona JSON como el tipo de clave.
  6. Descarga el archivo de claves JSON para la cuenta de servicio. Mantén este archivo seguro.

Configura Datadog para enviar registros a Cloud Storage

  1. Accede a Datadog con una cuenta con privilegios.
  2. Ve a Registros > Reenvío de registros.
  3. Haz clic en + Crear nuevo archivo.
  4. Selecciona Google Cloud Storage.
  5. Ingresa los parámetros obligatorios y haz clic en Guardar.

Configura un feed en Google SecOps para transferir registros desde el bucket de Cloud Storage

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. En la siguiente página, haz clic en Configurar un solo feed.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Datadog Logs GCS).
  5. Selecciona Google Cloud Storage V2 como el Tipo de fuente.
  6. Selecciona Datadog como el Tipo de registro.
  7. Haz clic en Obtener cuenta de servicio para obtener la cuenta de servicio única de este feed.
  8. Otorga a esta cuenta de servicio el rol de Visualizador de objetos de almacenamiento en el bucket de Cloud Storage que creaste anteriormente.
  9. Haz clic en Siguiente.
  10. Especifica valores para los siguientes parámetros de entrada:
    • URI del bucket de almacenamiento: Es el URI del bucket de Cloud Storage en el formato gs://datadog-data.
    • Opción de eliminación del código fuente: Selecciona la opción de eliminación según tu preferencia.
    • Antigüedad máxima del archivo: Incluye los archivos modificados en la cantidad de días especificada. El valor predeterminado es de 180 días.
    • Espacio de nombres del recurso: Es el espacio de nombres del recurso.
    • Etiquetas de transferencia: Es la etiqueta que se aplica a los eventos de este feed.
  11. Haz clic en Siguiente.
  12. Revisa la configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.

Opción 2: Compartir registros de Datadog a través de la configuración de Webhook

Configura feeds

Para configurar un feed, sigue estos pasos:

  1. Ve a Configuración de SIEM > Feeds.
  2. Haz clic en Agregar feed nuevo.
  3. En la siguiente página, haz clic en Configurar un solo feed.
  4. En el campo Nombre del feed, ingresa un nombre para el feed (por ejemplo, Datadog Logs).
  5. Selecciona Webhook como el Tipo de origen.
  6. Selecciona Datadog como el Tipo de registro.
  7. Haz clic en Siguiente.
  8. 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.
  9. Haz clic en Siguiente.
  10. Revisa la configuración del feed en la pantalla Finalizar y, luego, haz clic en Enviar.
  11. Haz clic en Generar clave secreta para generar una clave secreta que autentique este feed.
  12. Copia y almacena la clave secreta. No podrás volver a ver esta clave secreta. Si es necesario, puedes regenerar una clave secreta nueva, pero esta acción hace que la clave secreta anterior quede obsoleta.
  13. 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.
  14. Haz clic en Listo.

Crea una clave de API para el feed del webhook

  1. Ve a Google Cloud Consola > Credenciales: Ir a Credenciales.
  2. Haz clic en Crear credenciales y selecciona Clave de API.
  3. Restringe el acceso a la clave de API a la API de Chronicle.

Especifica la URL del extremo

  1. En tu aplicación cliente, especifica la URL del extremo HTTPS que se proporciona en el feed de webhook.
  2. Para habilitar la autenticación, especifica la clave de API y la clave secreta como parte del encabezado personalizado con el siguiente formato:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Recomendación: Especifica la clave de API como un encabezado en lugar de especificarla en la URL.

  3. Si 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
    

    Reemplaza lo siguiente:

    • ENDPOINT_URL: Es la URL del extremo del feed.
    • API_KEY: Es la clave de API para autenticarse en Google Security Operations.
    • SECRET: Es la clave secreta que generaste para autenticar el feed.

Configura Datadog para enviar registros al webhook

  1. Accede a Datadog con una cuenta con privilegios.
  2. Ve a Registros > Reenvío de registros.
  3. Selecciona Destinos personalizados.
  4. Haz clic en + Crear un destino nuevo.
  5. Especifica valores para los siguientes parámetros de entrada:
    • Elige un tipo de destino: Selecciona HTTP.
    • Asigna un nombre al destino: Proporciona un nombre descriptivo para el webhook (por ejemplo, Google SecOps Webhook).
    • Configura el destino: Pega la ENDPOINT_URL del feed. Elige una de las siguientes opciones de autenticación (no ambas):
      • Opción A (recomendada): Deja la URL sin credenciales y pasa API_KEY y SECRET como encabezados personalizados (se configurarán en el siguiente paso).
      • Opción B: Anexa las credenciales a la URL como parámetros de consulta, en el formato ENDPOINT_URL?key=API_KEY&secret=SECRET. Úsalo solo si el cliente no puede enviar encabezados personalizados.
    • Configura los parámetros de autenticación: Datadog requiere al menos un encabezado de autenticación para guardar el destino. Agrega el siguiente encabezado. El extremo del webhook lo ignora, por lo que no afecta la solicitud.
      • Nombre del encabezado: Authorization.
      • Valor del encabezado: application/json.
  6. Haz clic en Guardar.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
additional_field additional.fields Combinado
anonymous_label additional.fields Combinado
as_domain_label additional.fields Combinado
as_name_label additional.fields Combinado
as_number_label additional.fields Combinado
as_type_label additional.fields Combinado
auth_method_label additional.fields Combinado
category_label additional.fields Combinado
emitted_source_label additional.fields Combinado
event_type_label additional.fields Combinado
geo_continent_code_label additional.fields Combinado
geo_continent_label additional.fields Combinado
geo_continent_name_label additional.fields Combinado
geo_country_code_label additional.fields Combinado
geo_latitude_label additional.fields Combinado
geo_longitude_label additional.fields Combinado
geo_subdivision_code_label additional.fields Combinado
geo_subdivision_name_label additional.fields Combinado
geo_timezone_label additional.fields Combinado
http_level_label additional.fields Combinado
indicator_label additional.fields Combinado
indicators_matched_label additional.fields Combinado
infrastructure_label additional.fields Combinado
intention_label additional.fields Combinado
iso_code_label additional.fields Combinado
new_template_variable_name_label additional.fields Combinado
new_template_variable_preset_name_label additional.fields Combinado
new_template_variable_value_label additional.fields Combinado
new_widget_definition_background_color_label additional.fields Combinado
new_widget_definition_layout_type_label additional.fields Combinado
new_widget_definition_show_title_label additional.fields Combinado
new_widget_definition_title_label additional.fields Combinado
new_widget_definition_type_label additional.fields Combinado
new_widget_id_label additional.fields Combinado
new_widget_layout_height_label additional.fields Combinado
new_widget_layout_width_label additional.fields Combinado
new_widget_layout_x_label additional.fields Combinado
new_widget_layout_y_label additional.fields Combinado
record_attributes_asset_id_label additional.fields Combinado
record_attributes_asset_name_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_author_handle_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_author_name_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_description_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_id_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_reflow_type_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_title_label additional.fields Combinado
record_attributes_asset_new_value_dashboard_definition_url_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_author_handle_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_author_name_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_description_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_id_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_reflow_type_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_title_label additional.fields Combinado
record_attributes_asset_prev_value_dashboard_definition_url_label additional.fields Combinado
record_attributes_asset_type_label additional.fields Combinado
record_attributes_contextMap_cfRay_label additional.fields Combinado
record_attributes_contextMap_tradingAccountId_label additional.fields Combinado
record_attributes_evt_name_label additional.fields Combinado
record_attributes_network_client_geoip_as_number_label additional.fields Combinado
record_attributes_network_client_geoip_as_type_label additional.fields Combinado
record_attributes_network_client_geoip_location_latitude_label additional.fields Combinado
record_attributes_network_client_geoip_location_longitude_label additional.fields Combinado
record_attributes_network_client_geoip_subdivision_iso_code_label additional.fields Combinado
record_attributes_network_client_geoip_subdivision_name_label additional.fields Combinado
record_attributes_network_client_geoip_timezone_label additional.fields Combinado
record_trace_id_label additional.fields Combinado
request_id_label additional.fields Combinado
risk_label additional.fields Combinado
service_label additional.fields Combinado
source_name_label additional.fields Combinado
source_type_label additional.fields Combinado
source_url_label additional.fields Combinado
span_id_label additional.fields Combinado
symbol_label additional.fields Combinado
tag_label additional.fields Combinado
template_variable_name_label additional.fields Combinado
template_variable_preset_name_label additional.fields Combinado
template_variable_value_label additional.fields Combinado
timezone_label additional.fields Combinado
tunnels_operator_label additional.fields Combinado
tunnels_type_label additional.fields Combinado
type_label additional.fields Combinado
type_label1 additional.fields Combinado
url_details_host_label additional.fields Combinado
url_details_path_label additional.fields Combinado
user_created_timestamp_label additional.fields Combinado
widget_definition_background_color_label additional.fields Combinado
widget_definition_layout_type_label additional.fields Combinado
widget_definition_show_title_label additional.fields Combinado
widget_definition_title_label additional.fields Combinado
widget_definition_type_label additional.fields Combinado
widget_id_label additional.fields Combinado
widget_layout_height_label additional.fields Combinado
widget_layout_width_label additional.fields Combinado
widget_layout_x_label additional.fields Combinado
widget_layout_y_label additional.fields Combinado
eventMessage metadata.description Asignado directamente
date1 metadata.event_timestamp Se analizó como ISO8601
record.date1 metadata.event_timestamp Se analizó como ISO8601
event_type metadata.event_type Asignado directamente
has_principal metadata.event_type Asignado: trueNETWORK_CONNECTION, trueSTATUS_UPDATE
has_user metadata.event_type Asignado: trueUSER_UNCATEGORIZED
attributes._trace.origin.operation metadata.product_event_type Asignado directamente
eventType metadata.product_event_type Asignado directamente
record_attributes_contextMap_eventType metadata.product_event_type Asignado directamente
source metadata.product_event_type Asignado directamente
_id metadata.product_log_id Asignado directamente
record_attributes_thread_id metadata.product_log_id Asignado directamente
threadID metadata.product_log_id Asignado directamente
service metadata.product_name Asignado directamente
attributes.@version metadata.product_version Asignado directamente
attributes.http.method network.http.method Asignado directamente
agnt network.http.parsed_user_agent Asignado directamente
record_attributes_contextMap_userAgent network.http.parsed_user_agent Asignado directamente
attributes.http.status_code network.http.response_code Se cambió el nombre o se asignó
agnt network.http.user_agent Asignado directamente
attributes.http.useragent network.http.user_agent Asignado directamente
record_attributes_contextMap_userAgent network.http.user_agent Asignado directamente
attributes.logger_name principal.application Asignado directamente
service principal.application Asignado directamente
attributes._trace.baggage.device_id principal.asset.asset_id Asignado directamente
attributes.metadata.host_metadata.hostname principal.asset.hostname Asignado directamente
attributes.usr.id principal.asset.hostname Asignado directamente
attributes.network.client.geoip.ipAddress principal.asset.ip Combinado
attributes.network.client.ip principal.asset.ip Combinado
ip1 principal.asset.ip Combinado
ipAddress principal.asset.ip Asignado directamente
principal_ip_address principal.asset.ip Combinado
record_attributes_network_client_ip principal.asset.ip Combinado
org principal.group.group_display_name Asignado directamente
attributes.org.uuid principal.group.product_object_id Asignado directamente
attributes.metadata.host_metadata.hostname principal.hostname Asignado directamente
attributes.usr.id principal.hostname Asignado directamente
host principal.hostname Asignado directamente
record_host principal.hostname Asignado directamente
attributes.network.client.geoip.ipAddress principal.ip Combinado
attributes.network.client.ip principal.ip Combinado
ip1 principal.ip Combinado
ipAddress principal.ip Asignado directamente
principal_ip_address principal.ip Combinado
record_attributes_network_client_ip principal.ip Combinado
record_attributes_http_url_details_host_label principal.labels Combinado
record_attributes_http_url_details_path_label principal.labels Combinado
record_attributes_http_useragent_label principal.labels Combinado
record_attributes_network_client_geoip_as_domain_label principal.labels Combinado
record_attributes_network_client_geoip_as_route_label principal.labels Combinado
record_attributes_network_client_geoip_city_name_label principal.labels Combinado
record_attributes_network_client_geoip_continent_code_label principal.labels Combinado
record_attributes_network_client_geoip_continent_name_label principal.labels Combinado
record_attributes_network_client_geoip_country_iso_code_label principal.labels Combinado
record_attributes_network_client_geoip_country_name_label principal.labels Combinado
record_attributes_usr_id_label principal.labels Combinado
attributes.network.client.geoip.city.name principal.location.city Asignado directamente
attributes.network.client.geoip.country.name principal.location.country_or_region Asignado directamente
port principal.port Se cambió el nombre o se asignó
client_as_route_label principal.resource.attribute.labels Combinado
client_type_label principal.resource.attribute.labels Combinado
org_name_label principal.resource.attribute.labels Combinado
record_attributes_usr_uuid_label principal.user.attribute.labels Combinado
roles principal.user.attribute.roles Combinado
attributes.usr.email principal.user.email_addresses Combinado
email_id principal.user.email_addresses Combinado
record_attributes_usr_email principal.user.email_addresses Combinado
attributes.evt.actor.type principal.user.role_name Asignado directamente
attributes.metadata.user_uuid principal.user.userid Asignado directamente
attributes.usr.uuid principal.user.userid Asignado directamente
record_attributes_contextMap_user principal.user.userid Asignado directamente
user principal.user.userid Asignado directamente
BusArch_label security_result.about.resource.attribute.labels Combinado
CANDBVersion_label security_result.about.resource.attribute.labels Combinado
alert_label security_result.about.resource.attribute.labels Combinado
caller_label security_result.about.resource.attribute.labels Combinado
component_label security_result.about.resource.attribute.labels Combinado
esn_label security_result.about.resource.attribute.labels Combinado
ftcpVersion_label security_result.about.resource.attribute.labels Combinado
ingestMessageId_label security_result.about.resource.attribute.labels Combinado
label security_result.about.resource.attribute.labels Combinado
level_label security_result.about.resource.attribute.labels Combinado
msg_label security_result.about.resource.attribute.labels Combinado
query_label security_result.about.resource.attribute.labels Combinado
redactedVin_label security_result.about.resource.attribute.labels Combinado
updated_query_label security_result.about.resource.attribute.labels Combinado
vehicleId_label security_result.about.resource.attribute.labels Combinado
category1 security_result.category_details Combinado
_id_label security_result.detection_fields Combinado
action_label security_result.detection_fields Combinado
org_uuid_label security_result.detection_fields Combinado
record_attributes_http_method_label security_result.detection_fields Combinado
record_message_label security_result.detection_fields Combinado
record_source_label security_result.detection_fields Combinado
record_status_label security_result.detection_fields Combinado
status security_result.severity Asignado: "INFO", "DEBUG", "debug", "info"LOW, (?i)WARNMEDIUM
status security_result.severity_details Asignado directamente
context.AlertName security_result.threat_name Asignado directamente
src_ip_address src.ip Combinado
record_attributes_contextMap_dd_service target.application Asignado directamente
target_ip_address target.asset.ip Asignado: ^(?:[0-9]{1,3}[.]){3}[0-9]{1,3}$target_ip_address
target_ip_address target.ip Asignado: ^(?:[0-9]{1,3}[.]){3}[0-9]{1,3}$target_ip_address
record_attributes_contextMap_dd_version target.platform_version Asignado directamente
logger_fqcn_label target.resource.attribute.labels Combinado
logger_label target.resource.attribute.labels Combinado
modified_fields_label target.resource.attribute.labels Combinado
asset_name target.resource.name Asignado directamente
asset_id target.resource.product_object_id Asignado directamente
asset_type target.resource.type Asignado directamente
record_attributes_contextMap_dd_env target.resource.type Asignado directamente
record_attributes_contextMap_userId target.user.userid Asignado directamente
record_attributes_user target.user.userid Asignado directamente
N/A metadata.event_type Constante: NETWORK_CONNECTION
N/A network.http.parsed_user_agent Constante: parseduseragent
N/A security_result.severity Constante: LOW

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