Integra Policy Intelligence en Google SecOps

En este documento, se explica cómo integrar Policy Intelligence en Google Security Operations.

Casos de uso

La integración de Policy Intelligence admite los siguientes casos de uso:

  • Identifica cuentas de servicio inactivas: Identifica automáticamente las cuentas de servicio que no se autenticaron en un período específico para facilitar la limpieza de identidades sin usar y reducir la superficie de ataque.

  • Investiga la vulneración de identidad: Recupera la hora de la última autenticación de una cuenta de servicio durante una investigación de incidentes para determinar si la cuenta estuvo activa durante un período de sospecha de violación de la seguridad.

  • Automatiza la auditoría de cumplimiento: Compila los metadatos de autenticación de la cuenta de servicio en informes fáciles de entender para cumplir con los requisitos reglamentarios de supervisión del acceso y el uso de identidades.

Extremos

La integración interactúa con el único extremo activities:query dentro de la API de Policy Intelligence con diferentes parámetros para distintas acciones. A continuación, se muestra un ejemplo de un extremo para la integración:

[https://policyintelligence.googleapis.com/v1/projects/](https://policyintelligence.googleapis.com/v1/projects/)PROJECT_ID/locations/global/activityTypes/serviceAccountLastAuthentication/activities:query

Antes de comenzar

Antes de configurar la integración de Policy Intelligence en Google SecOps, completa los siguientes pasos de requisitos previos:

  1. Crea y configura un rol personalizado de Identity and Access Management.

  2. Crea una cuenta de servicio.

  3. Elige y configura uno de los siguientes métodos de autenticación:

    • Opción 1: Workload Identity (recomendado): Este método usa tokens de corta duración con la identidad temporal como cuenta de servicio.

    • Opción 2: Clave JSON de la cuenta de servicio: Este método se basa en un archivo de clave secreta estático y de larga duración.

Crea y configura el rol de IAM

Para proporcionar a la integración los permisos necesarios, crea un rol personalizado en tu proyecto:

  1. En la consola de Google Cloud , ve a IAM y administración > Roles.

    Ir a Funciones

  2. Haz clic en addCrear rol personalizado.

  3. Proporciona un Título (por ejemplo, SecOps Policy Intelligence Analyst), una Descripción y un ID único.

  4. Establece la Etapa de lanzamiento del rol en Disponibilidad general.

  5. Agrega el siguiente permiso al rol:

    • policyanalyzer.serviceAccountLastAuthenticationActivities.query
  6. Haz clic en Crear.

Crea una cuenta de servicio

  1. En la consola de Google Cloud , ve a IAM y administración > Cuentas de servicio.

    Ir a Cuentas de servicio

  2. Haz clic en addCrear cuenta de servicio.

  3. Proporciona un nombre y una descripción, y haz clic en Crear y continuar.

  4. En el paso Otorga acceso al proyecto a esta cuenta de servicio, asigna el rol personalizado que creaste.

  5. Haz clic en Listo. Toma nota de la dirección de correo electrónico de la cuenta de servicio.

Configura las credenciales de Workload Identity

Workload Identity es el enfoque recomendado, ya que usa tokens de acceso de corta duración con la identidad temporal como cuenta de servicio.

Identifica la identidad única de la instancia

Para establecer una conexión, debes otorgar permiso a tu instancia de Google SecOps para que use la identidad de tu cuenta de servicio.

  1. En Google SecOps, ve a Centro de contenido > Integraciones de respuesta.

  2. Selecciona la integración de Policy Intelligence y, luego, ingresa el correo electrónico de tu cuenta de servicio en Workload Identity Email.

  3. Haz clic en Guardar > Probar. Se espera que la prueba falle.

  4. Haz clic en el botón close_small junto a Prueba y busca el correo electrónico de identidad que comienza con gke-init-python@... o soar-python@....

  5. Copia esta dirección de correo electrónico única.

Autoriza la identidad de la instancia en Google Cloud

  1. En la consola de Google Cloud , ve a IAM y administración > Cuentas de servicio.

    Ir a Cuentas de servicio

  2. Selecciona la cuenta de servicio de destino y ve a Permisos > Otorgar acceso.

  3. Pega la dirección de correo electrónico única en el campo Principales nuevas y asigna el rol de Creador de tokens de cuenta de servicio (roles/iam.serviceAccountTokenCreator).

Otorga acceso al proyecto de cuota

La autenticación con Workload Identity requiere un Quota Project ID para hacer un seguimiento del uso de la API y la facturación.

  1. En la consola de Google Cloud , ve a IAM para el proyecto que se usa como proyecto de cuota.

    Ir a IAM

  2. Ubica tu cuenta de servicio y haz clic en Editar principal (edit).

  3. Haz clic en Agregar otro rol y selecciona Consumidor de Service Usage (roles/serviceusage.serviceUsageConsumer).

  4. Haz clic en Guardar.

Configura una clave JSON

Los archivos de claves secretas estáticas y de larga duración requieren una rotación manual. Usa este método solo si la autenticación de Workload Identity no está disponible.

  1. En la consola de Google Cloud , ve a IAM y administración > Cuentas de servicio y selecciona tu cuenta de servicio.

    Ir a Cuentas de servicio

  2. Ve a la pestaña Claves y haz clic en Agregar clave > Crear clave nueva.

  3. Selecciona JSON y haz clic en Crear. El navegador descargará el archivo JSON en tu computadora.

Parámetros de integración

La integración de Pub/Sub requiere los siguientes parámetros:

Parámetro Descripción
Service Account JSON File Content

Es opcional.

Es el contenido completo del archivo JSON de la clave de la cuenta de servicio.

Configura este parámetro para la autenticación de claves de cuentas de servicio.

Workload Identity Email

Es opcional.

Es la dirección de correo electrónico del cliente de tu cuenta de servicio.

Solo configura este parámetro si te autenticas con una identidad de Workload. Si se configura, también debes proporcionar un Quota Project ID y se ignorará Service Account JSON File Content.

Project ID

Es opcional.

Es el ID del proyecto al que se orientará en Pub/Sub.

Si no se proporciona ningún valor, la integración recupera el ID de las credenciales de cuenta de servicio.

Quota Project ID

Es opcional.

Es el ID del proyecto que se usa para el uso y la facturación de la API.

Este parámetro es obligatorio cuando se usa la autenticación de Workload Identity.

Si no se proporciona ningún valor, la integración recupera el ID de las credenciales de cuenta de servicio.

Verify SSL

Obligatorio.

Valida el certificado SSL para la conexión con el servidor. Está habilitada de forma predeterminada.

Para obtener instrucciones sobre cómo configurar una integración en Google SecOps, consulta Configura integraciones.

Si es necesario, puedes realizar cambios más adelante. Después de configurar una instancia de integración, puedes usarla en las guías. Para obtener más información sobre cómo configurar y admitir varias instancias, consulta Cómo admitir varias instancias.

Acciones

Para obtener más información sobre las acciones, consulta Responde a las acciones pendientes desde tu escritorio y Ejecuta una acción manual en tu caso.

Ping

Usa la acción Ping para probar la conectividad con Policy Intelligence.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

Ninguno

Resultados de la acción

La acción Ping proporciona los siguientes resultados:

Tipo de resultado de la acción Disponibilidad
Archivo adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos No disponible
Tabla de enriquecimiento No disponible
Resultado de JSON No disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Mensajes de salida

En un muro de casos, la acción Ping proporciona los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje
Successfully connected to the Google Cloud Policy Intelligence server with the provided connection parameters! La acción se realizó correctamente.
Failed to connect to the Google Cloud Policy Intelligence server!

No se pudo realizar la acción.

Verifica la conexión con el servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se describen los valores del resultado de la secuencia de comandos cuando se usa la acción Ping:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

Busca la actividad de la cuenta de servicio

Usa la acción Buscar actividad de la cuenta de servicio para buscar una actividad relacionada con las cuentas de servicio en Policy Intelligence.

Esta acción no se ejecuta en las entidades de Google SecOps.

Entradas de acción

La acción Buscar actividad de la cuenta de servicio requiere los siguientes parámetros:

Parámetros Descripción
Project ID Optional

Es el nombre del proyecto en el que se buscarán las actividades de la cuenta de servicio.

Si no proporcionas ningún valor, la acción extrae el ID del proyecto de la configuración de la integración.

Service Account Resource Name Obligatorio

Es una lista separada por comas que contiene los nombres de los recursos de las cuentas de servicio que se usan para recuperar actividades.

Max Activities To Return Obligatorio

Es la cantidad de actividades que se devolverán para una cuenta de servicio.

La cantidad máxima es 1,000.

De forma predeterminada, la acción devuelve 50 actividades.

Resultados de la acción

La acción Actividad de la Cuenta de servicio de Búsqueda proporciona los siguientes resultados:

Tipo de resultado de la acción Disponibilidad
Archivo adjunto del muro de casos No disponible
Vínculo al muro de casos No disponible
Tabla del muro de casos No disponible
Tabla de enriquecimiento No disponible
Resultado de JSON Disponible
Mensajes de salida Disponible
Resultado de secuencia de comandos Disponible
Resultado de JSON

En el siguiente ejemplo, se describe el resultado JSON que se recibe cuando se usa la acción Buscar actividad de la cuenta de servicio:

[
  {
    "Entity": "//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT@ENTITY_ID",
    "EntityResult": [
      {
        "fullResourceName": "//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT@ENTITY_ID",
        "activityType": "serviceAccountLastAuthentication",
        "observationPeriod": {
          "startTime": "2023-05-23T07:00:00Z",
          "endTime": "2023-08-20T07:00:00Z"
        },
        "activity": {
          "lastAuthenticatedTime": "2023-08-20T07:00:00Z",
          "serviceAccount": {
            "serviceAccountId": "SERVICE_ACCOUNT_ID",
            "projectNumber": "PROJECT_NUMBER",
            "fullResourceName": "//iam.googleapis.com/projects/PROJECT_ID/serviceAccounts/SERVICE_ACCOUNT@ENTITY_ID"
          }
        }
      }
    ]
  }
]
Mensajes de salida

En un muro de casos, la acción Buscar actividad de la cuenta de servicio proporciona los siguientes mensajes de salida:

Mensaje de salida Descripción del mensaje

Successfully found activity for the following service accounts in Google Cloud Policy Intelligence: SERVICE_ACCOUNTS

No activity was found for the following service accounts in Google Cloud Policy Intelligence: SERVICE_ACCOUNTS

No activity was found for the provided service accounts in Google Cloud Policy Intelligence

La acción se realizó correctamente.
Error executing action "Search Service Account Activity". Reason: ERROR_REASON

No se pudo realizar la acción.

Verifica la conexión con el servidor, los parámetros de entrada o las credenciales.

Resultado de secuencia de comandos

En la siguiente tabla, se describen los valores del resultado de la secuencia de comandos cuando se usa la acción Buscar actividad de la cuenta de servicio:

Nombre del resultado de la secuencia de comandos Valor
is_success True o False

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