Conéctate a Microsoft Azure para la configuración y la recopilación de datos de recursos

Puedes conectar el nivel Enterprise de Security Command Center a tu entorno de Microsoft Azure para realizar las siguientes acciones:

  • Habilita la detección de hallazgos relacionados con parámetros de configuración incorrectos.
  • Identifica las posibles rutas de ataque desde la Internet pública a tus activos de Microsoft Azure de alto valor.
  • Asigna el cumplimiento de los recursos de Microsoft Azure a varios estándares y comparativas.

La conexión de Security Command Center a Microsoft Azure crea un único lugar para que tu equipo administre y corrija la configuración incorrecta en Google Cloud y Azure.

Para ello, debes configurar una conexión de confianza entre Security Command Center y Azure con un Google Cloud agente de servicio y una identidad administrada asignada por el usuario de Microsoft Azure con acceso a los recursos de Azure que deseas supervisar. Administras y controlas la configuración de confianza en tu entorno de Microsoft Azure.

Puedes crear una conexión de Azure para cada Google Cloud organización.

Security Command Center usa esta conexión para recopilar datos de forma periódica sobre los recursos de Microsoft Azure que definas. Estos datos se manejan de la misma manera que los Datos del Servicio según el Aviso de Privacidad de Google Cloud. El conector usa llamadas a la API para recopilar datos de activos de Azure. Estas llamadas a la API pueden generar cargos de Microsoft Azure.

Durante un análisis, la canalización de recopilación de datos depende del agente de servicio para autenticarse en el entorno de Microsoft Azure con la identidad administrada que asignó el usuario.

En el siguiente diagrama, se muestra cómo se establece la confianza entre Security Command Center y Azure.

Configuración de Azure y Security Command Center

En este documento, se describe cómo configurar la conexión con Microsoft Azure. A grandes rasgos, estos son los pasos:

  1. Realiza los pasos de los requisitos previos que se indican en Antes de comenzar.

  2. Crea el conector de Azure y configura qué suscripciones y ubicaciones se deben analizar. Necesitas el ID de inquilino de Microsoft Azure para realizar estos pasos. Esto crea el ID del agente de servicio.

  3. Configura el entorno de Azure para crear una identidad administrada asignada por el usuario con los siguientes roles:

    • Lector dentro del alcance del grupo de administración raíz de Microsoft Azure para leer recursos, suscripciones y jerarquía de grupos de administración.

    • Key Vault Reader en el alcance del grupo de administración raíz de Microsoft Azure para leer metadatos sobre los vaults de claves y los certificados, las claves y los secretos relacionados.

    • Lector de datos de almacenamiento de objetos blob en el alcance del grupo de administración raíz de Microsoft Azure para leer metadatos sobre los recursos. Otorga este rol si planeas habilitar Otorgar permisos para el descubrimiento de Sensitive Data Protection cuando configures el conector de Azure.

    • Lectores de directorios en Microsoft Entra ID para leer grupos y membresías

    • Lector de seguridad en Microsoft Entra ID para leer las políticas de autorización

    El nombre visible predeterminado del grupo de administración raíz es Tenant root group.

    Estos permisos son necesarios para que Security Command Center identifique los grupos de administración, los grupos con membresías y las definiciones de roles, que se encuentran en un nivel superior al de las suscripciones en la jerarquía de recursos.

    También configuras una credencial de identidad federada para la identidad administrada asignada por el usuario con información sobre el agente de servicio.

    Puedes hacer los pasos de forma manual o usar Terraform. Necesitas el ID del agente de servicio cuando realizas los pasos de forma manual.

  4. Completa la configuración del conector de Azure y prueba la conexión. Para realizar estos pasos, debes usar información sobre la identidad administrada asignada por el usuario.

El conector de Azure no transfiere los registros de Azure necesarios para las capacidades de detección seleccionadas por SIEM en Security Command Center Enterprise. Para obtener esa información, consulta Cómo conectarse a Microsoft Azure para la recopilación de datos de registro.

Antes de comenzar

En las siguientes secciones, se describen los requisitos previos, las decisiones y la información necesarios antes de configurar la conexión entre Security Command Center y Microsoft Azure.

Revisa las funciones de Microsoft Azure

Asegúrate de conocer los siguientes conceptos y capacidades de Microsoft Azure:

Planifica la recopilación de datos

Cuando planifiques la estrategia de recopilación de datos, haz lo siguiente: Necesitas esta información cuando realices los pasos de este documento.

  • Crea o identifica el grupo de recursos en el que crearás la identidad administrada que defina el usuario. Necesitas el nombre del grupo de recursos durante la configuración.

    Reemplaza la variable RESOURCE_GROUP_NAME por el nombre del grupo de recursos para propagar el valor en los próximos pasos de este documento.

  • Identifica los recursos para los que deseas recopilar datos. Si planeas recopilar datos solo de suscripciones o regiones específicas, identifícalas y regístralas durante la planificación.

    También puedes configurar el conector de Azure para que detecte recursos automáticamente en todas las suscripciones y regiones.

Configura los permisos en Google Cloud

En Google Cloud, para crear y administrar una conexión con los proveedores de servicios en la nube externos, debes tener el rol de propietario de activos en la nube (roles/cloudasset.owner) en la organización. Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Configura los permisos en Microsoft Azure

Para realizar los pasos que se indican en Cómo configurar Microsoft Azure de forma manual o Cómo configurar Microsoft Azure con Terraform, debes tener una identidad de Azure con al menos un grupo de recursos creado, además de los siguientes permisos para configurar políticas de IAM para Microsoft Azure y Microsoft Entra.

  • Permiso Microsoft.Authorization/roleAssignments/write dentro del alcance del grupo de administración raíz Esta función está disponible en cualquiera de los siguientes roles integrados: Administrador de control de acceso basado en roles o Administrador de acceso de usuarios.

  • Los siguientes permisos en el alcance de un grupo de recursos en el que se creará la identidad administrada asignada por el usuario:

    • Microsoft.ManagedIdentity/userAssignedIdentities/write
    • Microsoft.ManagedIdentity/userAssignedIdentities/federatedIdentityCredentials/write

    Están disponibles en el rol integrado de Creador de identidades administradas.

  • El permiso de Microsoft Entra, microsoft.directory/roleAssignments/allProperties/allTasks. Esta función está disponible en el rol integrado de Microsoft Entra Administrador de roles con privilegios.

Debes tener acceso elevado para establecer permisos en el nivel del grupo de administración raíz. Consulta Cómo elevar el acceso para administrar todas las suscripciones y los grupos de administración de Azure para conocer los pasos que debes seguir para elevar el acceso de un administrador global.

Habilita y configura el conector de Azure de Security Command Center

Sigue estos pasos para crear y configurar el conector de Azure.

  1. Asegúrate de tener los permisos definidos en la sección Cómo configurar permisos en Google Cloud.

  2. Asegúrate de tener el ID de usuario de Microsoft Azure de 36 caracteres.

  3. Abre la pestaña Conectores en la página Configuración.

    Ir a Conectores

  4. Selecciona la organización en la que activaste Security Command Center Enterprise.

  5. Haz clic en Agregar conector > Microsoft Azure.

  6. En la página Configurar conector, ingresa el ID de usuario de Azure.

  7. Para permitir que Sensitive Data Protection cree perfiles de tus datos de Azure, mantén seleccionada la opción Otorgar permisos para el descubrimiento de Sensitive Data Protection. Esta opción agrega el rol de Lector de datos de almacenamiento de BLOB en la plantilla de Terraform para la identidad administrada definida por el usuario.

  8. Selecciona una de las siguientes opciones:

    • Agregar suscripciones automáticamente: Security Command Center descubrirá e incluirá automáticamente las suscripciones. De forma opcional, puedes evitar que se recopilen los IDs de suscripción agregándolos al campo Excluir suscripciones a Azure.
    • Agregar suscripciones de forma individual: Security Command Center no detectará las suscripciones automáticamente. Debes definir al menos una suscripción con el campo Add Azure Subscription.
  9. En la sección Selecciona las ubicaciones de Azure de las que quieres recopilar datos, selecciona una o más ubicaciones de Microsoft Azure de las que quieres recopilar datos (opcional). Deja este campo vacío para recopilar datos de todas las ubicaciones. Cuando seleccionas una ubicación del menú, se excluyen las ubicaciones que no se seleccionaron.

    La configuración recomendada es Automatically discover your Azure subscriptions y usar todas las ubicaciones de Microsoft Azure.

  10. Haz clic en Siguiente. Se abrirá la página Conéctate a Azure.

  11. Deja abierta la página Conéctate a Azure y continúa con Configura el entorno de Microsoft Azure.

    Después de configurar Microsoft Azure, regresarás a esta página para terminar de configurar el conector de Azure.

Configura el entorno de Microsoft Azure

Completa una de las siguientes secciones:

Configura Microsoft Azure de forma manual

En la siguiente sección, se describen los pasos manuales de alto nivel para configurar el entorno de Azure que establece la confianza entre Security Command Center y Microsoft Azure. Este procedimiento no es exhaustivo. Cada sección proporciona vínculos a la documentación de Microsoft Azure en la que se explica cómo realizar esa tarea.

Requisitos previos

Paso 1: Crea una identidad administrada asignada por el usuario en un grupo de recursos

  1. Sigue los pasos que se indican en Administra las identidades administradas asignadas por el usuario para crear la identidad administrada asignada por el usuario.

    Cuando crees la identidad, especifica lo siguiente:

    • Suscripción: Selecciona la suscripción en la que se administrará la identidad.
    • Grupo de recursos: Especifica el nombre del grupo de recursos, RESOURCE_GROUP_NAME, en el que se administrará la identidad. Lo identificaste cuando planificaste la recopilación de datos.
    • Región: Selecciona una región, por ejemplo, East US.
    • Nombre: Ingresa un nombre para la identidad administrada asignada por el usuario, por ejemplo: gcp-managed-identity. Reemplaza la variable USER_ASSIGNED_MANAGED_IDENTITY_NAME por el nombre de la identidad y se propagará en los pasos de este documento en los que sea necesario.
  2. Registra la siguiente información. La usarás en los próximos pasos.

    • ID de cliente: Es el valor de 36 caracteres asignado a la identidad.
    • ID de objeto (principal): Es el valor de 36 caracteres asignado a la identidad.
    • Nombre de identidad: Es el valor que definiste para Nombre.

Paso 2: Crea una credencial federada para la identidad administrada asignada por el usuario

Para agregar una credencial federada en la identidad administrada asignada por el usuario, sigue los pasos que se indican en Configura una identidad administrada asignada por el usuario para que confíe en un proveedor de identidad externo.

Usa la guía que se describe en la sección Otra situación del emisor y establece lo siguiente:

  • Situación de credenciales federadas: Elige Otro: Configura una identidad administrada por un proveedor externo de OpenID Connect para acceder a los recursos de Microsoft Azure como esta aplicación.
  • URL del emisor: Ingresa https://accounts.google.com.
  • Identificador de asunto: Ingresa el ID del agente de servicio que se generó cuando creaste el conector de Security Command Center para Azure.
  • Nombre: Ingresa un nombre para la credencial federada, por ejemplo: gcp-managed-identity-fic.
  • Público: Ingresa https://cloud.google.com.

Paso 3: Asigna roles integrados de Microsoft Azure

Sigue los pasos que se indican en Cómo asignar roles de Azure con el Portal de Azure para asignar los siguientes roles integrados de Microsoft Azure a la identidad administrada asignada por el usuario:

  • Lector de Vault
  • Lector
  • Lector de datos de almacenamiento de BLOB

Otorga estos roles en el alcance del grupo de administración raíz.

Paso 4: Asigna los roles integrados de Microsoft Entra ID

Sigue los pasos que se indican en Cómo asignar roles de Microsoft Entra a los usuarios para asignar los siguientes roles integrados de Microsoft Entra ID a la identidad administrada que asignó el usuario:

  • Lectores de directorios
  • Lector de seguridad

Cuando termines, continúa con la sección Completa la configuración del conector de Azure.

Configura Microsoft Azure con Terraform

En los siguientes pasos de alto nivel, se describe cómo usar Terraform para configurar Microsoft Azure. Este procedimiento no es exhaustivo. Para obtener más detalles sobre el uso de Terraform para aprovisionar recursos, consulta la documentación de Terraform en Azure.

  1. Abre la página Connect to Azure que dejaste abierta cuando creaste el conector de Azure.

  2. Haz clic en Descargar plantillas de Terraform. Esto descarga el archivo azure_terraform.zip que contiene varios archivos JSON.

  3. Accede a Microsoft Azure y, luego, abre Azure Cloud Shell con BASH o Azure PowerShell.

  4. Configura Terraform según las políticas de tu organización con una de las siguientes instrucciones:

  5. Copia el archivo azure_terraform.zip en tu entorno de Azure Cloud Shell y, luego, extrae el contenido. Verás los siguientes archivos: main.tf.json, outputs.tf.json, providers.tf.json y variables.tf.json.

  6. Crea copias de estos archivos en un directorio separado.

    1. Crea un directorio nuevo para probar el código de Terraform de muestra y conviértelo en el directorio actual.
    2. En el directorio creado recientemente, crea copias de los archivos JSON extraídos con el mismo nombre que el archivo original:

      • Crea un archivo nuevo llamado main.tf.json y, luego, copia y pega el código del archivo main.tf.json extraído.
      • Crea un archivo nuevo llamado providers.tf.json y, luego, copia y pega el código del archivo providers.tf.json extraído.
      • Crea un archivo nuevo llamado outputs.tf.json y, luego, copia y pega el código del archivo outputs.tf.json extraído.
      • Crea un archivo nuevo llamado variables.tf.json y, luego, copia y pega el código del archivo variables.tf.json extraído.
  7. Ejecuta el siguiente comando para inicializar la implementación de Terraform.

    terraform init -upgrade
    
  8. Ejecuta el siguiente comando para crear un plan de ejecución.

    terraform plan -out main.tfplan -var="resource_group_name=RESOURCE_GROUP_NAME" -var="user_assigned_managed_identity_name=USER_ASSIGNED_MANAGED_IDENTITY_NAME"
    

    Reemplaza lo siguiente:

    • RESOURCE_GROUP_NAME: Es el nombre del grupo de recursos de Microsoft Azure en el que se creará la identidad administrada asignada por el usuario.
    • USER_ASSIGNED_MANAGED_IDENTITY_NAME: Es el nombre de la identidad administrada asignada por el usuario que se creará. Si no se especifica, el valor predeterminado es google-cloud-managed-identity.
  9. Ejecuta el siguiente comando para aplicar el plan de ejecución a la infraestructura de Microsoft Azure.

    terraform apply main.tfplan
    
  10. Continúa con la sección Completa la configuración del conector de Azure.

Completa la configuración del conector de Azure

  1. Asegúrate de tener la siguiente información sobre la identidad administrada asignada por el usuario de Microsoft Azure:

    • ID de cliente: Es el valor de 36 caracteres asignado a la identidad.
    • ID de objeto (principal): Es el valor de 36 caracteres asignado a la identidad.

    Para obtener información sobre cómo encontrar esta información, consulta Cómo ver la lista de identidades administradas asignadas por el usuario.

  2. Abre la página Connect to Azure que dejaste abierta cuando creaste el conector de Azure.

  3. En la sección Detalles de la identidad administrada de Azure, ingresa lo siguiente:

    • ID de cliente de identidad administrada: Es el ID de cliente.
    • ID de objeto de identidad administrada: Es el ID de objeto (principal).
  4. Haz clic en Continuar.

  5. En la página Test connector, haz clic en Test Connector para verificar que Security Command Center se pueda conectar al entorno de Microsoft Azure.

    Si la conexión se realiza correctamente,el agente de servicio Google Cloud puede asumir la identidad administrada asignada por el usuario de Microsoft Azure y tiene los permisos necesarios de Microsoft Azure y Microsoft Entra. Si la conexión no se realiza correctamente, consulta Cómo solucionar errores cuando se prueba la conexión.

  6. Haz clic en Guardar. Aparecerá la página Conectores.

El conector comienza a analizar y recopilar datos de las suscripciones y ubicaciones de Azure que especificaste. Los resultados pueden tardar hasta 24 horas en aparecer.

Soluciona problemas de errores cuando pruebas la conexión

En la siguiente sección, se describen los errores que pueden ocurrir cuando pruebas la conexión entre Security Command Center y Microsoft Azure, y cómo resolverlos.

Error AZURE_ENABLED_SUBSCRIPTIONS_NOT_FOUND

El conector de Azure no encontró suscripciones habilitadas en el usuario identificado por el campo ID de usuario de Azure. Comprueba lo siguiente:

  • Si está seleccionada la opción Agregar suscripciones automáticamente, verifica que el inquilino incluya suscripciones que estén en el estado Enabled y que no aparezcan en el campo Excluir suscripciones de Azure.
  • Si está seleccionada la opción Agregar suscripciones de forma individual, verifica que las suscripciones que especificaste tengan el estado Enabled.

Error AZURE_FAILED_TO_ASSUME_MANAGED_IDENTITY

La conexión no es válida porque el agente de servicio Google Cloud no puede asumir la identidad administrada asignada por el usuario de Microsoft Azure. Las siguientes pueden ser posibles causas:

  • La identidad administrada asignada por el usuario especificada en la conexión no existe o la configuración es incorrecta.
  • Es posible que a la identidad administrada asignada por el usuario especificada en la conexión le falte la credencial de identidad federada necesaria para confiar en el agente de servicio Google Cloud .

Para solucionar este problema, haz lo siguiente:

Error AZURE_MANAGED_IDENTITY_MISSING_REQUIRED_PERMISSION

La conexión no es válida porque a la identidad administrada asignada por el usuario de Azure le falta un rol obligatorio de Microsoft Azure o Microsoft Entra. El mensaje de error incluye el rol faltante.

Para resolver este problema, revisa la configuración que estableciste cuando configuraste los roles integrados de Microsoft Azure y los roles integrados de Microsoft Entra para asegurarte de que la configuración sea correcta.

Error AZURE_MANAGED_IDENTITY_ASSUMPTION_FAILED_AND_MISSING_REQUIRED_PERMISSION

La conexión no es válida porque el agente de servicio Google Cloud no pudo asumir la identidad administrada asignada por el usuario de Microsoft Azure y, al mismo tiempo, faltan algunos de los roles obligatorios de Microsoft Azure o Microsoft Entra.

El mensaje de error incluye detalles sobre qué alcance no pudo asumir la identidad administrada asignada por el usuario y qué roles faltan.

Para solucionar este problema, haz lo siguiente:

Otras sugerencias para solucionar problemas

En la siguiente sección, se describen los comportamientos y los posibles pasos para abordarlos.

Se muestra un resultado para un recurso de Azure eliminado

Después de borrar un recurso de Azure, pueden pasar hasta 40 horas para que se quite del sistema de inventario de activos de Security Command Center. Si decides borrar el recurso para resolver un problema, es posible que veas el problema informado durante este período porque el recurso aún no se quitó del sistema de inventario de recursos de Security Command Center.

¿Qué sigue?