Crea y administra módulos personalizados para Event Threat Detection

En esta página, se explica cómo crear y administrar módulos personalizados para Event Threat Detection.

Antes de comenzar

En esta sección, se describen los requisitos para usar módulos personalizados en Event Threat Detection.

Security Command Center Premium y Event Threat Detection

Para usar los módulos personalizados de Event Threat Detection, esta función debe estar habilitada. Para habilitar Event Threat Detection, consulta Cómo habilitar o inhabilitar un servicio integrado.

Roles y permisos de IAM obligatorios

Los roles de IAM determinan las acciones que puedes realizar con los módulos personalizados de Event Threat Detection.

En la siguiente tabla, se incluye una lista de los permisos de los módulos personalizados de Event Threat Detection que se requieren, así como los roles de IAM predefinidos que los incluyen.

Puedes usar la consola de Google Cloud o la API de Security Command Center para aplicar estos roles a nivel de la organización, la carpeta o el proyecto.

Permisos necesarios Rol
securitycentermanagement.eventThreatDetectionCustomModules.create
securitycentermanagement.eventThreatDetectionCustomModules.update
securitycentermanagement.eventThreatDetectionCustomModules.delete
roles/securitycentermanagement.etdCustomModulesEditor
roles/securitycenter.settingsEditor
roles/securitycenter.admin
securitycentermanagement.eventThreatDetectionCustomModules.list
securitycentermanagement.eventThreatDetectionCustomModules.get
securitycentermanagement.effectiveEventThreatDetectionCustomModules.list
securitycentermanagement.effectiveEventThreatDetectionCustomModules.get
securitycentermanagement.eventThreatDetectionCustomModules.validate
roles/securitycentermanagement.etdCustomModulesViewer
roles/securitycentermanagement.etdCustomModulesEditor
roles/securitycenter.adminViewer
roles/securitycenter.admin

Si te encuentras con errores de acceso en Security Command Center, pídele asistencia al administrador. Consulta una de las siguientes páginas según el nivel en el que activaste Security Command Center:

Registros obligatorios

Asegúrate de que los registros pertinentes estén activados para tu organización, tus carpetas y tus proyectos. Para obtener información sobre qué registros requiere cada tipo de módulo personalizado, consulta la tabla en Módulos y plantillas personalizados.

No se admiten los registros de fuentes fuera de Google Cloud .

Niveles de módulos personalizados

En este documento, se usan los siguientes términos para describir el nivel en el que se creó un módulo personalizado:

Módulo residencial
El módulo se creó en la vista o el alcance actuales. Por ejemplo, si estás en la vista de organización de la consola de Google Cloud , los módulos residenciales son los que se crearon a nivel de la organización.
Módulo heredado
El módulo se creó en una vista o un alcance principal. Por ejemplo, un módulo creado a nivel de la organización es un módulo heredado en cualquier nivel de carpeta o proyecto.
Módulo secundario
El módulo se creó en una vista o un alcance secundarios. Por ejemplo, un módulo creado a nivel de carpeta o proyecto es un módulo descendiente a nivel de la organización.

Crea módulos personalizados

Puedes crear módulos personalizados de Event Threat Detection a través de la consola deGoogle Cloud o modificando una plantilla JSON y enviándola a través de gcloud CLI. Solo necesitas plantillas JSON si planeas usar gcloud CLI para crear módulos personalizados.

Para obtener una lista de las plantillas de módulos compatibles, consulta Módulos y plantillas personalizados.

Estructura de la plantilla

Las plantillas definen los parámetros que los módulos personalizados usan para identificar amenazas en tus registros. Las plantillas se escriben en JSON y tienen una estructura similar a los hallazgos que genera Security Command Center. Solo debes configurar una plantilla JSON si planeas usar gcloud CLI para crear un módulo personalizado.

Cada plantilla contiene campos personalizables:

  • severity: Es el nivel de gravedad o riesgo que deseas asignar a los hallazgos de este tipo: LOW, MEDIUM, HIGH o CRITICAL.
  • description: Es la descripción del módulo personalizado.
  • recommendation: Son las acciones recomendadas para abordar los hallazgos generados por el módulo personalizado.
  • Parámetros de detección: Son las variables que se usan para evaluar los registros y activar los hallazgos. Los parámetros de detección difieren para cada módulo, pero incluyen uno o más de los siguientes:
    • domains: Dominios web para supervisar
    • ips: Direcciones IP que se deben supervisar
    • permissions: Permisos que se deben observar
    • regions: Regiones en las que se permiten instancias nuevas de Compute Engine
    • roles: Roles para observar
    • accounts: Cuentas para observar
    • Son los parámetros que definen los tipos de instancias de Compute Engine permitidos, por ejemplo, series, cpus y ram_mb.
    • Expresiones regulares para verificar las propiedades, por ejemplo, caller_pattern y resource_pattern.

La siguiente muestra de código es un ejemplo de plantilla JSON para Configurable Bad IP.

{
  "metadata": {
    "severity": "LOW",
    "description": "Flagged by Cymbal as malicious",
    "recommendation": "Contact the owner of the relevant project."
  },
  "ips": [
    "192.0.2.1",
    "192.0.2.0/24"
  ]
}

En el ejemplo anterior, el módulo personalizado genera un hallazgo de gravedad baja si tus registros indican que hay un recurso conectado a la dirección IP 192.0.2.1 o 192.0.2.0/24.

Cómo modificar una plantilla de módulo

Para crear módulos, elige una plantilla de módulo y modifícala.

Si planeas usar Google Cloud CLI para crear tu módulo personalizado, debes realizar esta tarea.

Si planeas usar la consola de Google Cloud para crear tu módulo personalizado, omite esta tarea. Usarás las opciones que se presentan en la pantalla para modificar los parámetros de la plantilla.

  1. Elige una plantilla en Módulos y plantillas personalizados.
  2. Copia el código en un archivo local.
  3. Actualiza los parámetros que deseas usar para evaluar tus registros.
  4. Guarda el archivo como un archivo JSON.
  5. Crea un módulo personalizado a través de gcloud CLI con el archivo JSON.

Crea un módulo personalizado

En esta sección, se describe cómo crear un módulo personalizado a través de laGoogle Cloud consola, gcloud CLI, la API de REST y Terraform. Cada módulo personalizado de Event Threat Detection tiene un límite de tamaño de 6 MB.

Para crear un módulo personalizado, sigue estos pasos:

Console

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Haz clic en Crear módulo.
  3. Haz clic en la plantilla de módulo que deseas usar.
  4. Haz clic en Seleccionar.
  5. En Nombre del módulo, ingresa un nombre visible para la plantilla nueva. El nombre no debe superar los 128 caracteres y solo debe contener caracteres alfanuméricos y guiones bajos, por ejemplo, example_custom_module.
  6. Selecciona o agrega los valores de los parámetros solicitados. Los parámetros difieren para cada módulo. Por ejemplo, si seleccionaste la plantilla del módulo Configurable allowed Compute Engine region, debes seleccionar una o más regiones. De manera alternativa, proporciona la lista en formato JSON.
  7. Haz clic en Siguiente.
  8. En Gravedad, ingresa el nivel de gravedad que deseas asignar a los hallazgos generados por el nuevo módulo personalizado.
  9. En Descripción, ingresa una descripción para el nuevo módulo personalizado.
  10. En Próximos pasos, ingresa las acciones recomendadas en formato de texto sin formato. Se ignorarán los saltos de párrafo que agregues.
  11. Haz clic en Crear.

gcloud

El comando gcloud scc manage custom-modules etd create crea un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenecen los módulos personalizados (organization, folder o project).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_CONFIG: Es la configuración del módulo personalizado. Usa una plantilla de módulo personalizado como punto de partida.
  • MODULE_TYPE: Es el tipo de módulo personalizado. Para obtener una lista de los tipos admitidos, consulta Módulos y plantillas personalizados.
  • MODULE_DISPLAY_NAME: Es el nombre visible legible del módulo personalizado. Puede contener letras, números y guiones bajos (_), y tener hasta 128 caracteres.

Guarda el siguiente código en un archivo llamado request.json.

{
  MODULE_CONFIG
}

Ejecuta el comando gcloud scc manage custom-modules etd create:

Linux, macOS o Cloud Shell

gcloud scc manage custom-modules etd create \
    --RESOURCE_TYPE=RESOURCE_ID \
    --custom-config-file=request.json \
    --display-name=MODULE_DISPLAY_NAME \
    --module-type=MODULE_TYPE \
    --enablement-state=ENABLED

Windows (PowerShell)

gcloud scc manage custom-modules etd create `
    --RESOURCE_TYPE=RESOURCE_ID `
    --custom-config-file=request.json `
    --display-name=MODULE_DISPLAY_NAME `
    --module-type=MODULE_TYPE `
    --enablement-state=ENABLED

Windows (cmd.exe)

gcloud scc manage custom-modules etd create ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --custom-config-file=request.json ^
    --display-name=MODULE_DISPLAY_NAME ^
    --module-type=MODULE_TYPE ^
    --enablement-state=ENABLED

REST

El método RESOURCE_TYPE.locations.eventThreatDetectionCustomModules.create de la API de Security Command Center Management crea un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenece el módulo personalizado (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_CONFIG: Es la configuración del módulo personalizado. Usa una plantilla de módulo personalizado como punto de partida.
  • MODULE_TYPE: Es el tipo de módulo personalizado. Para obtener una lista de los tipos admitidos, consulta Módulos y plantillas personalizados.
  • MODULE_DISPLAY_NAME: Es el nombre visible legible del módulo personalizado. Puede contener letras, números y guiones bajos (_), y tener hasta 128 caracteres.

Método HTTP y URL:

POST https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/eventThreatDetectionCustomModules

Cuerpo JSON de la solicitud:

{
  "config": MODULE_CONFIG,
  "enablementState": "ENABLED",
  "type": "MODULE_TYPE",
  "displayName": "MODULE_DISPLAY_NAME"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/1234567890123/locations/global/eventThreatDetectionCustomModules/98765432109876543210",
  "config": {
    "metadata": {
      "severity": "MEDIUM",
      "description": "An IAM custom role contains permissions that aren't allowed.",
      "recommendation": "Remove the permissions from the custom role."
    },
    "permissions": [
      "accessapproval.requests.get",
      "accessapproval.requests.invalidate",
      "accessapproval.requests.list",
      "accessapproval.settings.delete"
    ]
  },
  "enablementState": "ENABLED",
  "type": "CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION",
  "displayName": "iam_custom_role_prohibited_permissions",
  "updateTime": "2026-03-16T19:44:58.588134Z"
}

Terraform

Si deseas obtener más información para aplicar o quitar una configuración de Terraform, consulta los comandos básicos de Terraform. Para obtener más información, consulta la documentación de referencia del proveedor de Terraform.

resource "google_scc_management_organization_event_threat_detection_custom_module" "example" {
  organization = "123456789"
  location = "global"
  display_name = "basic_custom_module"
  enablement_state = "ENABLED"
  type = "CONFIGURABLE_BAD_IP"
  description = "My Event Threat Detection Custom Module"
  config = jsonencode({
    "metadata": {
      "severity": "LOW",
      "description": "Flagged by Forcepoint as malicious",
      "recommendation": "Contact the owner of the relevant project."
    },
    "ips": [
      "192.0.2.1",
      "192.0.2.0/24"
    ]
  })
}

Se creará tu módulo personalizado y se comenzará a realizar el análisis. Para borrar un módulo, consulta Borra un módulo personalizado.

El nombre de la categoría del módulo personalizado contiene la categoría del hallazgo del tipo de módulo y el nombre visible del módulo que estableciste. Por ejemplo, el nombre de la categoría de un módulo personalizado puede ser Unexpected Compute Engine Region: example_custom_module. En la consola de Google Cloud , los guiones bajos se muestran como espacios. Sin embargo, en tus consultas, debes incluir los guiones bajos.

Las cuotas rigen el uso de los módulos personalizados para Event Threat Detection.

Latencia de detección

La latencia de detección de Event Threat Detection y todos los demás servicios integrados de Security Command Center se describen en Latencia de análisis.

Revisa los resultados

Los resultados que generan los módulos personalizados se pueden ver en la Google Cloud consola o con gcloud CLI o la API de REST.

Console

  1. En la consola de Google Cloud , ve a la página Resultados de Security Command Center.

    Acceder a Hallazgos

  2. Selecciona tu Google Cloud organización o proyecto.
  3. En la sección Filtros rápidos, en la subsección Nombre visible de la fuente, selecciona Módulos personalizados de Event Threat Detection. Los resultados de la consulta de hallazgos se actualizan para mostrar solo los hallazgos de esta fuente.
  4. Para ver los detalles de un resultado específico, haz clic en el nombre del resultado en la columna Categoría. Se abre el panel de detalles del hallazgo y se muestra la pestaña Resumen.
  5. En la pestaña Resumen, revisa los detalles del hallazgo, incluida la información sobre lo que se detectó, el recurso afectado y, si está disponible, los pasos que puedes seguir para corregir el hallazgo.
  6. Opcional: Para ver la definición completa de JSON del hallazgo, haz clic en la pestaña JSON.

gcloud

Cómo encontrar el ID de la fuente

El comando gcloud scc sources describe muestra información sobre una fuente de hallazgos de Security Command Center.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenece la fuente (organizations, folders o projects).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.

Ejecuta el comando gcloud scc sources describe:

Linux, macOS o Cloud Shell

gcloud scc sources describe RESOURCE_TYPE/RESOURCE_ID \
    --source-display-name="Event Threat Detection Custom Modules"

Windows (PowerShell)

gcloud scc sources describe RESOURCE_TYPE/RESOURCE_ID `
    --source-display-name="Event Threat Detection Custom Modules"

Windows (cmd.exe)

gcloud scc sources describe RESOURCE_TYPE/RESOURCE_ID ^
    --source-display-name="Event Threat Detection Custom Modules"

Deberías recibir una respuesta similar a la que figura a continuación:

canonicalName: organizations/123456789012/sources/98765432109876543210
description: Provider used by Event Threat Detection Custom Modules
displayName: Event Threat Detection Custom Modules
name: organizations/123456789012/sources/98765432109876543210

El ID de la fuente es el valor numérico que se encuentra al final de los campos canonicalName y name, por ejemplo, 98765432109876543210.

Enumera todos los hallazgos de los módulos personalizados de Event Threat Detection

El comando gcloud scc findings list enumera los resultados de una fuente en una ubicación específica.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso que se obtendrá (organizations, folders o projects).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • LOCATION: Es la ubicación de Security Command Center que se usará, como eu. Si la residencia de datos no está habilitada, usa global.
  • SOURCE_ID: Es el identificador numérico de la fuente de los hallazgos.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID \
    --source=SOURCE_ID \
    --location=LOCATION

Windows (PowerShell)

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID `
    --source=SOURCE_ID `
    --location=LOCATION

Windows (cmd.exe)

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID ^
    --source=SOURCE_ID ^
    --location=LOCATION

La respuesta contiene una lista de hallazgos.

Enumera los hallazgos de un módulo personalizado específico

El comando gcloud scc findings list enumera los resultados de una fuente en una ubicación específica.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso que se obtendrá (organizations, folders o projects).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • LOCATION: Es la ubicación de Security Command Center que se usará, como eu. Si la residencia de datos no está habilitada, usa global.
  • SOURCE_ID: Es el identificador numérico de la fuente de los hallazgos.
  • CUSTOM_MODULE_CATEGORY_NAME: Es el nombre de la categoría del módulo personalizado, compuesto por la categoría de hallazgo del módulo (como se indica en Módulos y plantillas personalizados), dos puntos, un espacio y el nombre visible del módulo con espacios reemplazados por guiones bajos. Por ejemplo, Unexpected Compute Engine region: example_custom_module.

Ejecuta el siguiente comando:

Linux, macOS o Cloud Shell

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID \
    --source=SOURCE_ID \
    --location=LOCATION \
    --filter="category=\"CUSTOM_MODULE_CATEGORY_NAME\""

Windows (PowerShell)

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID `
    --source=SOURCE_ID `
    --location=LOCATION `
    --filter="category=\"CUSTOM_MODULE_CATEGORY_NAME\""

Windows (cmd.exe)

gcloud scc findings list RESOURCE_TYPE/RESOURCE_ID ^
    --source=SOURCE_ID ^
    --location=LOCATION ^
    --filter="category=\"CUSTOM_MODULE_CATEGORY_NAME\""

La respuesta contiene una lista de hallazgos.

REST

Cómo encontrar el ID de la fuente

El método RESOURCE_TYPE.sources.list de la API de Security Command Center muestra información sobre las fuentes de resultados de Security Command Center.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso principal (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.

Método HTTP y URL:

GET https://securitycenter.googleapis.com/v2/RESOURCE_TYPE/RESOURCE_ID/sources

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene una lista de hallazgos.

{
  "sources": [
    {
      "name": "organizations/123456789012/sources/9876543210987654321",
      "displayName": "Security Command Center",
      "description": "Detector for misconfigurations within the Security Command Center platform.",
      "canonicalName": "organizations/123456789012/sources/9876543210987654321"
    },
    {
      "name": "organizations/123456789012/sources/8765432109876543210",
      "displayName": "Application Design Center",
      "description": "Provides vulnerabilities on ADC resources.",
      "canonicalName": "organizations/123456789012/sources/8765432109876543210"
    },
    {
      "name": "organizations/123456789012/sources/7654321098765432109",
      "displayName": "Cloud Anomaly Detection",
      "description": "Provider used by Cloud Anomaly Detection",
      "canonicalName": "organizations/123456789012/sources/7654321098765432109"
    },
    {
      "name": "organizations/123456789012/sources/6543210987654321098",
      "displayName": "Vulnerability Assessment",
      "description": "Provider for Vulnerability Assessment.",
      "canonicalName": "organizations/123456789012/sources/6543210987654321098"
    },
    {
      "name": "organizations/123456789012/sources/5432109876543210987",
      "displayName": "Data Security Posture Management",
      "description": "Service to detect drift and post findings",
      "canonicalName": "organizations/123456789012/sources/5432109876543210987"
    },
    {
      "name": "organizations/123456789012/sources/4321098765432109876",
      "displayName": "Notebook Security Scanner",
      "description": "Provider for the Notebook Security Scanner",
      "canonicalName": "organizations/123456789012/sources/4321098765432109876"
    },
    {
      "name": "organizations/123456789012/sources/3210987654321098765",
      "displayName": "GKE Security Posture",
      "description": "Provides actionable security issues on GKE.",
      "canonicalName": "organizations/123456789012/sources/3210987654321098765"
    },
    {
      "name": "organizations/123456789012/sources/2109876543210987654",
      "displayName": "Integrated Vulnerability Scanner",
      "description": "Provider for Integrated Vulnerability Scanner.",
      "canonicalName": "organizations/123456789012/sources/2109876543210987654"
    },
    {
      "name": "organizations/123456789012/sources/1098765432109876543",
      "displayName": "Event Threat Detection Custom Modules",
      "description": "Provider used by Event Threat Detection Custom Modules",
      "canonicalName": "organizations/123456789012/sources/1098765432109876543"
    },
    {
      "name": "organizations/123456789012/sources/9876543210987654321",
      "displayName": "Serverless Vulnerability Detection",
      "description": "Provides vulnerability detection for serverless assets.",
      "canonicalName": "organizations/123456789012/sources/9876543210987654321"
    }
  ]
}

El ID de la fuente es el valor numérico que se encuentra al final de los campos canonicalName y name.

Enumera los hallazgos de los módulos personalizados de Event Threat Detection

El método RESOURCE_TYPE.sources.locations.findings.list de la API de Security Command Center enumera los resultados de una fuente en una ubicación específica.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_TYPE: Es el tipo de recurso que se obtendrá (organizations, folders o projects).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • LOCATION: Es la ubicación de Security Command Center que se usará, como eu. Si la residencia de datos no está habilitada, usa global.
  • SOURCE_ID: Es el identificador numérico de la fuente de los hallazgos.

Método HTTP y URL:

GET https://securitycenter.googleapis.com/v2/RESOURCE_TYPE/RESOURCE_ID/sources/SOURCE_ID/locations/LOCATION/findings

Para enviar tu solicitud, expande una de estas opciones:

La respuesta contiene una lista de hallazgos.

Si deseas obtener más información para filtrar los resultados, consulta Mostrar una lista de hallazgos de seguridad.

Los resultados que generan los módulos personalizados se pueden administrar como todos los resultados de Security Command Center. Para obtener más información, consulta lo siguiente:

Administra los módulos personalizados de Event Threat Detection

En esta sección, se describe cómo ver, enumerar, actualizar y borrar los módulos personalizados de Event Threat Detection.

Cómo ver o enumerar módulos personalizados

De forma predeterminada, cuando enumeras los módulos personalizados de Event Threat Detection, ves todos los siguientes elementos:

  • Son todos los módulos personalizados de Event Threat Detection que pertenecen a la organización, la carpeta o el proyecto.
  • Son todos los módulos personalizados heredados de Event Threat Detection. Por ejemplo, si estás viendo un proyecto, los módulos personalizados creados en la organización y las carpetas principales de ese proyecto se incluyen en los resultados.
  • Son todos los módulos personalizados de Event Threat Detection creados en recursos secundarios. Por ejemplo, si estás en la vista de organización, los módulos personalizados de las carpetas y los proyectos de la organización se incluyen en los resultados.

Console

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Opcional: Para ver solo los módulos personalizados, en la casilla Filtro, ingresa Type:Custom.

gcloud

El comando gcloud scc manage custom-modules etd list enumera todos los módulos personalizados de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenecen los módulos personalizados (organization, folder o project).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.

Ejecuta el comando gcloud scc manage custom-modules etd list:

Linux, macOS o Cloud Shell

gcloud scc manage custom-modules etd list \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud scc manage custom-modules etd list `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud scc manage custom-modules etd list ^
    --RESOURCE_TYPE=RESOURCE_ID

Deberías recibir una respuesta similar a la que figura a continuación:

- config:
    metadata:
      description: There is a Compute Engine instance in a region that's not allowed.
      recommendation: Delete the instance. If necessary, create a new instance in
        an allowed region.
      severity: MEDIUM
    regions:
    - region: northamerica-northeast1
  displayName: compute_instance_prohibited_region
  enablementState: ENABLED
  name: organizations/123456789012/locations/global/eventThreatDetectionCustomModules/9876543210987654321
  type: CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_REGION
  updateTime: '2026-02-19T01:23:10.237946Z'
- config:
    metadata:
      description: An IAM custom role contains permissions that aren't allowed.
      recommendation: Remove the permissions from the custom role.
      severity: MEDIUM
    permissions:
    - accessapproval.requests.get
    - accessapproval.requests.invalidate
    - accessapproval.requests.list
    - accessapproval.settings.delete
  displayName: iam_custom_role_prohibited_permissions
  enablementState: ENABLED
  name: organizations/123456789012/locations/global/eventThreatDetectionCustomModules/8765432109876543210
  type: CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION
  updateTime: '2025-12-23T06:54:15.618430Z'

REST

El método RESOURCE_TYPE.locations.eventThreatDetectionCustomModules.list de la API de Security Command Center Management enumera todos los módulos personalizados de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenecen los módulos personalizados (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.

Método HTTP y URL:

GET https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/eventThreatDetectionCustomModules

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

[
  {
    "config": {
      "metadata": {
        "description": "There is a Compute Engine instance in a region that's not allowed.",
        "recommendation": "Delete the instance. If necessary, create a new instance in an allowed region.",
        "severity": "MEDIUM"
      },
      "regions": [
        {
          "region": "northamerica-northeast1"
        }
      ]
    },
    "displayName": "compute_instance_prohibited_region",
    "enablementState": "ENABLED",
    "name": "organizations/123456789012/locations/global/eventThreatDetectionCustomModules/9876543210987654321",
    "type": "CONFIGURABLE_ALLOWED_COMPUTE_ENGINE_REGION",
    "updateTime": "2026-02-19T01:23:10.237946Z"
  },
  {
    "config": {
      "metadata": {
        "description": "An IAM custom role contains permissions that aren't allowed.",
        "recommendation": "Remove the permissions from the custom role.",
        "severity": "MEDIUM"
      },
      "permissions": [
        "accessapproval.requests.get",
        "accessapproval.requests.invalidate",
        "accessapproval.requests.list",
        "accessapproval.settings.delete"
      ]
    },
    "displayName": "iam_custom_role_prohibited_permissions",
    "enablementState": "ENABLED",
    "name": "organizations/123456789012/locations/global/eventThreatDetectionCustomModules/8765432109876543210",
    "type": "CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION",
    "updateTime": "2025-12-23T06:54:15.618430Z"
  }
]

Cómo habilitar o inhabilitar un módulo personalizado

Cuando habilitas o inhabilitas un módulo personalizado, ese cambio se aplica a la organización, la carpeta o el proyecto al que pertenece el módulo personalizado. Este recurso es el elemento principal del módulo personalizado.

El cambio también se puede heredar en cualquier carpeta o proyecto que sea descendiente del elemento superior del módulo personalizado. Por ejemplo, si creas un módulo personalizado en una carpeta, los proyectos dentro de esa carpeta pueden heredar el estado del módulo personalizado.

Si el elemento superior de un módulo personalizado es una carpeta o un proyecto, debes habilitar o inhabilitar el módulo personalizado en el mismo nivel de la jerarquía de recursos o en un nivel inferior. Por ejemplo, si el elemento superior de un módulo personalizado es un proyecto, no puedes habilitar ni inhabilitar el módulo personalizado para una organización o carpeta, ya que estos tipos de recursos siempre son elementos superiores de los proyectos.

Console

Consulta Cómo ver y editar los módulos de un servicio.

gcloud

El comando gcloud scc manage custom-modules etd update actualiza el estado de un módulo personalizado para Event Threat Detection.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso que se actualizará (organization, folder o project).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo.
  • NEW_STATE: ENABLED para habilitar el módulo; DISABLED para inhabilitar el módulo; o INHERITED para heredar el estado de habilitación del recurso principal (solo es válido para proyectos y carpetas).

Ejecuta el comando gcloud scc manage custom-modules etd update:

Linux, macOS o Cloud Shell

gcloud scc manage custom-modules etd update event-threat-detection MODULE_ID \
    --RESOURCE_TYPE=RESOURCE_ID \
    --enablement-state="NEW_STATE"

Windows (PowerShell)

gcloud scc manage custom-modules etd update event-threat-detection MODULE_ID `
    --RESOURCE_TYPE=RESOURCE_ID `
    --enablement-state="NEW_STATE"

Windows (cmd.exe)

gcloud scc manage custom-modules etd update event-threat-detection MODULE_ID ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --enablement-state="NEW_STATE"

Deberías recibir una respuesta similar a la que figura a continuación:

config:
  metadata:
    description: An IAM custom role contains permissions that aren't allowed.
    recommendation: Remove the permissions from the custom role.
    severity: MEDIUM
  permissions:
  - accessapproval.requests.get
  - accessapproval.requests.invalidate
  - accessapproval.requests.list
  - accessapproval.settings.delete
displayName: iam_custom_role_prohibited_permissions
enablementState: DISABLED
name: projects/1234567890123/locations/global/eventThreatDetectionCustomModules/98765432109876543210
type: CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION
updateTime: '2026-03-20T16:52:27.046766Z'

REST

El método RESOURCE_TYPE.locations.eventThreatDetectionCustomModules.patch de la API de Security Command Center Management actualiza el estado de un módulo personalizado para Event Threat Detection.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso que se actualizará (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo.
  • NEW_STATE: ENABLED para habilitar el módulo; DISABLED para inhabilitar el módulo; o INHERITED para heredar el estado de habilitación del recurso principal (solo es válido para proyectos y carpetas).
  • FIELDS_TO_UPDATE: es opcional. Lista de campos separados por comas que se actualizarán. Si se omite, se actualizan todos los campos.

Método HTTP y URL:

PATCH https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/eventThreatDetectionCustomModules/MODULE_ID?updateMask=enablementState

Cuerpo JSON de la solicitud:

{
  "enablementState": "NEW_STATE"
}

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "name": "projects/1234567890123/locations/global/eventThreatDetectionCustomModules/98765432109876543210",
  "config": {
    "metadata": {
      "severity": "MEDIUM",
      "description": "An IAM custom role contains permissions that aren't allowed.",
      "recommendation": "Remove the permissions from the custom role."
    },
    "permissions": [
      "accessapproval.requests.get",
      "accessapproval.requests.invalidate",
      "accessapproval.requests.list",
      "accessapproval.settings.delete"
    ]
  },
  "enablementState": "DISABLED",
  "type": "CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION",
  "displayName": "iam_custom_role_prohibited_permissions",
  "updateTime": "2026-03-20T16:52:27.046766Z"
}

Actualiza la definición de un módulo personalizado

En esta sección, se describe cómo actualizar un módulo personalizado a través de la consola deGoogle Cloud y gcloud CLI. Cada módulo personalizado de Event Threat Detection tiene un límite de tamaño de 6 MB.

No puedes actualizar el tipo de módulo de un módulo personalizado.

Para actualizar un módulo personalizado, sigue estos pasos:

Console

Solo puedes editar los módulos personalizados residenciales. Por ejemplo, si estás en la vista de la organización, solo puedes editar los módulos personalizados que se crearon a nivel de la organización.

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Busca el módulo personalizado que deseas editar.
  3. En ese módulo personalizado, haz clic en Acciones > Editar.
  4. Edita el módulo personalizado según sea necesario.
  5. Haz clic en Guardar.

gcloud

Para actualizar un módulo, ejecuta el siguiente comando y, luego, incluye la plantilla JSON del módulo actualizado:

 gcloud alpha scc custom-modules etd update CUSTOM_MODULE_ID \
     --RESOURCE_FLAG=RESOURCE_ID \
     --enablement-state="ENABLED" \
     --custom-config-from-file=PATH_TO_JSON_FILE

Reemplaza lo siguiente:

  • CUSTOM_MODULE_ID: Es el ID numérico del módulo personalizado de Event Threat Detection, por ejemplo, 1234567890. Puedes obtener el ID numérico en el campo name del módulo personalizado pertinente cuando consultes la lista de módulos personalizados.
  • RESOURCE_FLAG: Es el alcance del recurso principal en el que reside el módulo personalizado; puede ser organization, folder o project.
  • RESOURCE_ID: Es el ID del recurso principal, es decir, el ID de la organización, el ID de la carpeta o el ID del proyecto.
  • PATH_TO_JSON_FILE: Es el archivo JSON que contiene la definición en formato JSON del módulo personalizado.

Verifica el estado de un solo módulo personalizado

Console

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Busca el módulo personalizado en la lista.

    El estado del módulo personalizado se muestra en la columna Estado.

gcloud

El comando gcloud scc manage custom-modules etd describe obtiene un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenece el módulo personalizado (organization, folder o project).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo personalizado.

Ejecuta el comando gcloud scc manage custom-modules etd describe:

Linux, macOS o Cloud Shell

gcloud scc manage custom-modules etd describe MODULE_ID \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud scc manage custom-modules etd describe MODULE_ID `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud scc manage custom-modules etd describe MODULE_ID ^
    --RESOURCE_TYPE=RESOURCE_ID

Deberías recibir una respuesta similar a la que figura a continuación:

config:
  metadata:
    description: An IAM custom role contains permissions that aren't allowed.
    recommendation: Remove the permissions from the custom role.
    severity: MEDIUM
  permissions:
  - accessapproval.requests.get
  - accessapproval.requests.invalidate
  - accessapproval.requests.list
  - accessapproval.settings.delete
displayName: iam_custom_role_prohibited_permissions
enablementState: ENABLED
name: organizations/123456789012/locations/global/eventThreatDetectionCustomModules/8765432109876543210
type: CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION
updateTime: '2025-12-23T06:54:15.618430Z'

REST

El método RESOURCE_TYPE.locations.eventThreatDetectionCustomModules.get de la API de Security Command Center Management obtiene un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenece el módulo personalizado (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto que se obtendrá. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo personalizado.

Método HTTP y URL:

GET https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/eventThreatDetectionCustomModules/MODULE_ID

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{
  "config": {
    "metadata": {
      "description": "An IAM custom role contains permissions that aren't allowed.",
      "recommendation": "Remove the permissions from the custom role.",
      "severity": "MEDIUM"
    },
    "permissions": [
      "accessapproval.requests.get",
      "accessapproval.requests.invalidate",
      "accessapproval.requests.list",
      "accessapproval.settings.delete"
    ]
  },
  "displayName": "iam_custom_role_prohibited_permissions",
  "enablementState": "ENABLED",
  "name": "organizations/123456789012/locations/global/eventThreatDetectionCustomModules/8765432109876543210",
  "type": "CONFIGURABLE_CUSTOM_ROLE_WITH_PROHIBITED_PERMISSION",
  "updateTime": "2025-12-23T06:54:15.618430Z"
}

Borra un módulo personalizado

Cuando borras un módulo personalizado de Event Threat Detection, los resultados que generó no se modifican y siguen disponibles en Security Command Center. En cambio, cuando borras un módulo personalizado de Security Health Analytics, sus resultados generados se marcan como inactivos.

No puedes recuperar un módulo personalizado borrado.

Console

No puedes borrar módulos personalizados heredados. Por ejemplo, si estás en la vista del proyecto, no puedes borrar los módulos personalizados que se crearon a nivel de la carpeta o la organización.

Para borrar un módulo personalizado a través de la consola de Google Cloud , haz lo siguiente:

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Busca el módulo personalizado que quieres borrar.
  3. En ese módulo personalizado, haz clic en Acciones > Borrar. Aparecerá un mensaje en el que se te pedirá que confirmes la eliminación.
  4. Haz clic en Borrar.

gcloud

El comando gcloud scc manage custom-modules etd delete crea un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de comando a continuación, haz los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenecen los módulos personalizados (organization, folder o project).
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo personalizado.

Ejecuta el comando gcloud scc manage custom-modules etd delete:

Linux, macOS o Cloud Shell

gcloud scc manage custom-modules etd delete MODULE_ID \
    --RESOURCE_TYPE=RESOURCE_ID

Windows (PowerShell)

gcloud scc manage custom-modules etd delete MODULE_ID `
    --RESOURCE_TYPE=RESOURCE_ID

Windows (cmd.exe)

gcloud scc manage custom-modules etd delete MODULE_ID ^
    --RESOURCE_TYPE=RESOURCE_ID

Deberías recibir una respuesta similar a la que figura a continuación:

Deleted [projects/1234567890123/locations/global/eventThreatDetectionCustomModules/98765432109876543210].

REST

El método RESOURCE_TYPE.locations.eventThreatDetectionCustomModules.delete de la API de Security Command Center Management crea un módulo personalizado de Event Threat Detection para una organización, una carpeta o un proyecto.

Antes de usar cualquiera de los datos de solicitud a continuación, realiza los siguientes reemplazos:

  • RESOURCE_TYPE: Es el tipo de recurso al que pertenecerá el módulo personalizado (organizations, folders o projects).
  • QUOTA_PROJECT: Es el ID del proyecto que se usará para el seguimiento de la facturación y la cuota.
  • RESOURCE_ID: Es el identificador numérico de la organización, la carpeta o el proyecto del módulo personalizado. En el caso de los proyectos, también puedes usar el ID alfanumérico del proyecto.
  • MODULE_ID: Es el identificador numérico del módulo personalizado.

Método HTTP y URL:

DELETE https://securitycentermanagement.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/global/eventThreatDetectionCustomModules/MODULE_ID

Para enviar tu solicitud, expande una de estas opciones:

Deberías recibir una respuesta JSON similar a la que se muestra a continuación:

{}

Clona un módulo personalizado

Cuando clonas un módulo personalizado, el módulo personalizado resultante se crea como residente del recurso que estás viendo. Por ejemplo, si clonas un módulo personalizado que tu proyecto heredó de la organización, el nuevo módulo personalizado será un módulo residencial en el proyecto.

No puedes clonar un módulo personalizado secundario.

Para clonar un módulo personalizado a través de la consola de Google Cloud , haz lo siguiente:

  1. Consulta los módulos del servicio Event Threat Detection. Los módulos predefinidos y personalizados aparecen en una lista.
  2. Busca el módulo personalizado que deseas clonar.
  3. Para ese módulo personalizado, haz clic en Acciones > Clonar.
  4. Edita el módulo personalizado según sea necesario.
  5. Haz clic en Crear.

¿Qué sigue?