Implementación de CSPM (Cloud Security Posture Management) para IBM Cloud

El módulo de cumplimiento en IBM Cloud® Security and Compliance Center Workload Protection mantiene un inventario detallado de los recursos, permitiendo la priorización basada en el contexto completo, y facilitando la resolución de errores de configuración de postura. El módulo de conformidad admite la gestión de posturas de seguridad en la nube y Kubernetes (CSPM y KSPM, respectivamente) en entornos de nube híbrida.

Workload Protection CSPM y KSPM proporcionan gestión de conformidad y configuración de recursos y cargas de trabajo críticas. Se admiten varias políticas predefinidas, como IBM Cloud Framework for Financial Services, Digital Operational Resilience Act (DORA) o CIS IBM Cloud Foundations Benchmark para lograr la seguridad y el cumplimiento de su entorno. También se admiten políticas personalizadas.

La función IBM Cloud CSPM de Workload Protection interactúa con la función de agregador de App Configuration para recopilar todos los detalles de configuración de sus recursos. La función de agregador es gratuita y forma parte del plan Básico de App Configuration. La integración utiliza los perfiles de confianza IAM de IBM para gestionar los permisos.

Puede integrar fácilmente cuentas IBM Cloud para implementar CSPM en instancias nuevas y existentes de Workload Protection.

También puede integrar su IBM Cloud Enterprise para implementar CSPM para todas las cuentas que pertenezcan a su organización. Todos los pasos para integrar su Enterprise se describen en esta documentación.

Antes de empezar

Antes de empezar, asegúrate de que has cumplido los siguientes requisitos:

Cuando se activan las restricciones basadas en el contexto para cualquier recurso de su cuenta de IBM Cloud, no se puede recopilar la configuración a menos que se proporcione acceso a ese recurso. Para proporcionar acceso, es necesario crear una regla. Cuando se le pida que añada un contexto, cree una zona de red y seleccione App Configuration como servicio de referencia.

Integración con una instancia Workload Protection existente

Para habilitar CSPM para su cuenta IBM Cloud desde su instancia Workload Protection existente, siga los pasos siguientes:

  1. Vaya a la lista de recursos y seleccione su instancia Workload Protection. Puede encontrar sus instancias Workload Protection en la sección Seguridad.
  2. Seleccione Fuentes y vaya a la pestaña IBM Cloud.
  3. En esta pestaña, haz clic en Añadir. Introduce el nombre del perfil de confianza, App Configuration nombre, y selecciona el plan.
  4. Por último, haga clic en Añadir para tener CSPM en su cuenta IBM Cloud.

Una vez que aprovisiona su instancia, los resultados se muestran unos minutos después de que se establezca la conexión, dependiendo del número de recursos.

Integración en una nueva instancia Workload Protection

Para habilitar CSPM para su cuenta IBM Cloud al aprovisionar una nueva instancia Workload Protection mediante el catálogo IBM Cloud catálogo, active el interruptor Habilitar gestión de posturas de seguridad en la nube (CSPM) para su cuenta IBM Cloud.

  1. Seleccione el nombre del perfil de confianza que se utilizará para conectarse al servicio App Configuration y recopilar definiciones de recursos para ejecutar las validaciones de postura.
  2. Seleccione el App Configuration nombre de instancia y plan. Por defecto está seleccionado el plan Básico.

Una vez aprovisionada la instancia, los resultados se muestran unos 5-10 minutos después de la conexión, dependiendo del número de recursos.

Desactivación de CSPM en la cuenta IBM Cloud

Para desactivar CSPM para su cuenta IBM Cloud, siga los siguientes pasos:

  1. Vaya a la lista de recursos y seleccione su instancia Workload Protection. Puede encontrar todas las instancias Workload Protection en la sección Seguridad.
  2. Seleccione Fuentes y vaya a la pestaña IBM Cloud.
  3. Haz clic en los tres puntos de la cuenta que quieres desactivar y pulsa Eliminar.

Su cuenta se desactivará para CSPM en la instancia Workload Protection seleccionada.

Integrar su cuenta

En esta sección se describen los pasos que debe realizar con la CLI y la API para integrar manualmente una cuenta IBM Cloud en Workload Protection para implementar CSPM.

Puede utilizar los pasos descritos aquí para integrar también una cuenta IBM Cloud distinta de aquella en la que tiene su instancia Workload Protection.

Antes de empezar:

  • Necesita tener una instancia Workload Protection. Si no tienes una, créala como se describe en Provisionar una instancia.
  • Obtenga su Workload Protection CRN. Puedes conseguirlo yendo a la Lista de recursos y haciendo clic en el servicio al que te diriges. En la sección Detalles, copie el CRN. Se hará referencia a él en esta sección como workload-protection-instance-crn.
  • Obtenga su Workload Protection nombre. Puedes conseguirlo yendo a la Lista de recursos y haciendo clic en el servicio al que te diriges. En la sección Detalles, copie el Nombre. Se hará referencia a él en esta sección como workload-protection-instance-name.
  • Asegúrese de que dispone de los permisos correctos para crear perfiles de confianza, instancias App Configuration e instancias Workload Protection:
    • Titular de la cuenta.
    • Función de administrador en todos los servicios de gestión de cuentas.
    • Rol de administrador sobre el servicio de identidad de IAM. Para obtener más información, consulte Servicio de identidad IAM.
  • Instalación de la IBM Cloud CLI. Si la CLI está instalada, continúe en el paso siguiente.
  • Inicie sesión en la cuenta IBM Cloud y región donde desea aprovisionar las instancias. Ejecute el siguiente comando : ibmcloud login.

Esta integración requiere los cuatro pasos siguientes:

  1. Crear un perfil de confianza entre Workload Protection y App Configuration.
  2. Crear instancia App Configuration.
  3. Crear un perfil de confianza para App Configuration para recopilar la configuración de recursos.
  4. Configure la instancia App Configuration para recopilar configuraciones de servicio.
  5. Incorpore su cuenta IBM Cloud a su instancia Workload Protection.

Paso 1: Crear un perfil de confianza para la interacción de Workload Protection con App Configuration

Antes de realizar este paso, su instancia Workload Protection ya debe estar creada. El CRN de instancia Workload Protection se utiliza para crear y configurar el perfil de confianza para interactuar con App Configuration.

  • Requiere las siguientes políticas de acceso:
    • Cuenta de empresa (Viewer + Usage Report Viewer) para validar el tipo de cuenta.
    • App Configuration (Manager + Configuration Aggregator Reader)
  • CRN (Relación de confianza - IBM Cloud Servicios) es la Workload Protection CRN
    • Por ejemplo: crn:v1:bluemix:public:sysdig-secure:us-south:a/1560be5426584bf8a43e75xxxxxxxxxx:299e4ca4-d96c-4fba-9691-xxxxxxxx::

Puede crear este perfil de confianza con los siguientes comandos de la CLI:

Cree el perfil de confianza (puede modificar el nombre). Guarda el ID para utilizarlo más adelante. Será referenciado más adelante como ibmcspm-tp-wp-app-config-ID:

ibmcloud iam trusted-profile-create ibmcspm-wp-app-config --description "Trusted profile for Workload Protection interaction with Config Service"

Asigna la relación de confianza correspondiente. Sustituya workload-protection-instance-crn por su Workload Protection CRN:

ibmcloud iam trusted-profile-identity-create ibmcspm-wp-app-config --id workload-protection-instance-crn --id-type CRN

Cree la política para el perfil de confianza de la cuenta de empresa:

ibmcloud iam trusted-profile-policy-create ibmcspm-wp-app-config -r Viewer,"Usage Report Viewer" --service-name enterprise

Cree la Política para el perfil de confianza para App Configuration:

ibmcloud iam trusted-profile-policy-create ibmcspm-wp-app-config -r Manager,"Configuration Aggregator Reader" --service-name apprapp

Paso 2: Crear la instancia App Configuration

En este paso, creará una instancia App Configuration que su Workload Protection utilizará para recopilar todas las definiciones de recursos para implementar el IBM Cloud CSPM.

Puede crear una nueva instancia App Configuration con el siguiente comando CLI. Puede modificar el plan, la región o el grupo de recursos. Consulte este documento para obtener más información.

Guarda el CRN y el GUID para utilizarlos más adelante. Más adelante se hará referencia a ellos como app-config-aggregator-CRN y app-config-aggregator-ID respectivamente.

Ejecute el siguiente comando para crear la instancia App Configuration. Sustituya el plan, la región o el grupo de recursos en función de sus necesidades:

ibmcloud resource service-instance-create "ibmcspm-app-config" "apprapp" "basic" "us-south" -g Default

Observe que el CRN (ID de la salida) se referencia como app-config-aggregator-CRN. Del mismo modo, el ID de instancia (GUID de la salida) se referencia como app-config-aggregator-ID. Guarde esos valores, ya que se utilizarán en los pasos siguientes.

Paso 3: Perfil de confianza para App Configuration para recopilar la configuración del servicio

En este paso, creará el perfil de confianza que su instancia App Configuration utiliza para recopilar todas las configuraciones de servicio para realizar IBM Cloud CSPM. Asegúrese de que tiene el App Configuration CRN (app-config-aggregator-CRN) que creó en el paso 2.

Para configurar correctamente el perfil de confianza, necesita el CRN de instancia App Configuration del paso anterior.

  • Requiere las siguientes Políticas de Acceso:
    • Todos los servicios de gestión de cuentas (Viewer + Service Configuration Reader)
    • Todos los servicios de identidad y acceso (Reader + Viewer + Service Configuration Reader)
  • CRN (relación de confianza - IBM Cloud Services) al Config Service CRN
    • Por ejemplo: crn:v1:bluemix:public:apprapp:us-south:a/1560be5426584bf8a43e75xxxxxxxxxx:b4829f20-6d22-4604-939d-xxxxxxxx::

Puede crear este perfil de confianza con los siguientes comandos de la CLI:

Cree el perfil de confianza (puede modificar el nombre). Nota: guarda el ID para utilizarlo más adelante. Más adelante se hará referencia a él como ibmcspm-tp-app-config-aggregator-ID:

ibmcloud iam trusted-profile-create ibmcspm-app-config-aggregator --description "Trusted profile for App Configuration for collecting service configuration"

Asignar la relación de confianza correspondiente. Sustituya app-config-aggregator-CRN por su Workload Protection CRN:

ibmcloud iam trusted-profile-identity-create ibmcspm-app-config-aggregator --id app-config-aggregator-CRN --id-type CRN

Cree la Política para el perfil de confianza de la cuenta de empresa:

ibmcloud iam trusted-profile-policy-create ibmcspm-app-config-aggregator -r Viewer,"Service Configuration Reader" --service-name "All Account Management services"

Cree la Política para el perfil de confianza para App Configuration:

ibmcloud iam trusted-profile-policy-create ibmcspm-app-config-aggregator -r Viewer,"Service Configuration Reader" --service-name "All Identity and Access enabled services"

Paso 4: Configurar la instancia App Configuration para recopilar configuraciones de servicio

En este paso se configura App Configuration para que empiece a recopilar la configuración del servicio. Puede realizar este paso accediendo a su instancia App Configuration y activando Configuration Aggregator.

También puede realizar este paso a través de la API. Antes de iniciar este paso, asegúrese de que dispone de:

  • El App Configuration GUID (app-config-aggregator-ID) que creó en Paso 2.
  • El perfil de confianza para App Configuration para recopilar la configuración del servicio (ibmcspm-tp-app-config-aggregator-ID) que creó en Paso 3.

Para la siguiente acción, ejecute una petición HTTP PUT utilizando curl.

En primer lugar, obtenga su token de API de IAM ejecutando el siguiente comando:

export AUTH_TOKEN=`ibmcloud iam oauth-tokens | awk '{print $4}'`

Este comando almacena tu token en la variable AUTH_TOKEN. Para obtener más información, consulte Obtención de la señal de API de IAM.

Ahora, ejecute la siguiente petición HTTP PUT a su instancia App Configuration. Recuerde sustituir <app-config-aggregator-ID> por el ID de su instancia App Configuration, <region> por la región en la que ha creado su instancia App Configuration:

curl -X PUT -H "Authorization: Bearer $AUTH_TOKEN" https://<region>.apprapp.cloud.ibm.com/apprapp/config_aggregator/v1/instances/<app-config-aggregator-ID>/settings -d '{"resource_collection_enabled": true, "trusted_profile_id": "<ibmcspm-tp-app-config-aggregator-ID>", "regions": ["all"]}'

Usted debe recibir la salida con la configuración que ha establecido, similar a:

{"additional_scope":[],"last_updated":"2024-06-20T15:17:15Z","regions":["all"],"resource_collection_enabled":true,"trusted_profile_id":"<ibmcspm-tp-app-config-aggregator-ID>"}

Paso 5: Incorpore su cuenta IBM Cloud a su instancia Workload Protection

En este último paso, configura tu instancia Workload Protection necesitas utilizar los siguientes valores de los pasos anteriores:

  • Su Workload Protection nombre de instancia (workload-protection-instance-name).
  • El App Configuration CRN (app-config-aggregator-CRN) que creó en Paso 2.
  • El perfil de confianza de Workload Protection para interactuar con App Configuration (ibmcspm-tp-wp-app-config-ID) que creó en Paso 1.
  • Tu IBM Cloud ID de cuenta (<ibm-cloud-account-id>). Puedes obtenerlo en Gestión > Cuenta > Configuración de la cuenta en ID.

Si anteriormente ha incorporado alguna otra cuenta de IBM Cloud o ha añadido algún otro parámetro, asegúrese de mantener los parámetros existentes. Puede ver los parámetros utilizados de su instancia ejecutando ibmcloud resource service-instance <workload-protection-instance-name> --output json y sustituyendo <workload-protection-instance-name> por el nombre de su instancia Workload Protection.

Ejecute el siguiente comando CLI para actualizar su instancia Workload Protection para integrar su cuenta IBM Cloud. Sustituya <workload-protection-instance-name> por su Workload Protection nombre de instancia, <app-config-aggregator-CRN> por su App Configuration y <ibmcspm-tp-wp-app-config-ID> por el ID del perfil de confianza creado en Paso 2 y <ibm-cloud-account-id> por el ID de su cuenta IBM Cloud.

ibmcloud resource service-instance-update "<workload-protection-instance-name>" -p '{"enable_cspm": true, "target_accounts": [{"account_id": "<ibm-cloud-account-id>", "config_crn": "<app-config-aggregator-CRN>", "trusted_profile_id": "<ibmcspm-tp-wp-app-config-ID>"}]}' -g Default

Verificación de la aplicación de los CSPM

Verifique la integración siguiendo los pasos siguientes:

  • En su instancia Workload Protection, seleccione Fuentes / IBM Cloud Cuenta. Debería ver su cuenta IBM Cloud con el estado Active. El estado puede tardar unos minutos en actualizarse.
  • Accede a tu instancia Workload Protection haciendo clic en Abrir panel, tu cuenta aparecerá en Integraciones / Cuentas Cloud.
  • En su Workload Protection, acceda a Inventario y revise la lista de IBM Cloud recursos de su cuenta. Dispone de muchos filtros predefinidos entre los que puede elegir. También puede utilizar el cuadro de búsqueda para filtrar por tipo o nombre de recurso. Haciendo clic en cada recurso, puede revisar la configuración del recurso, los controles de postura aplicados contra él y los resultados de la evaluación.
  • Accediendo a Postura / Cumplimiento, podrá revisar los resultados de los marcos disponibles (como IBM Cloud Marco para Servicios Financieros) de sus recursos IBM Cloud.

Desactivación de CSPM para IBM Cloud con la CLI

Para desactivar CSPM para su cuenta, necesita ejecutar el siguiente comando. Sustituya <workload-protection-instance-name> por su Workload Protection nombre de instancia, <app-config-aggregator-CRN> por su App Configuration y <ibmcspm-tp-wp-app-config-ID> por el ID del perfil de confianza creado en Paso 2 y <ibm-cloud-account-id> por el ID de su cuenta IBM Cloud:

ibmcloud resource service-instance-update "<workload-protection-instance-name>" -p '{"enable_cspm": true, "target_accounts": [{"account_id": "<ibm-cloud-account-id>", "config_crn": "<app-config-aggregator-CRN>", "trusted_profile_id": "<ibmcspm-tp-wp-app-config-ID>", "delete": true}]}' -g Default

Se trata del mismo comando descrito en Paso 5 con el añadido de "delete": true.

Integrar su empresa

En esta sección se describen los pasos que debe realizar con la CLI para integrar un IBM Cloud Enterprise en Workload Protection para implementar CSPM. Estos pasos integrarán todas sus cuentas secundarias y la cuenta de gestión Enterprise.

Antes de empezar, asegúrese de que ha completado los siguientes requisitos para conectar un Workload Protection Enterprise para CSPM:

Esta integración requiere los cuatro pasos siguientes:

  1. Crear un perfil de confianza entre Workload Protection y App Configuration.
  2. Crear instancia App Configuration
  3. Configure la instancia App Configuration para recopilar configuraciones de servicio de toda la Empresa.
  4. Conecte su IBM Cloud Enterprise a su instancia Workload Protection.

Paso 1: Crear un perfil de confianza para la interacción de Workload Protection con App Configuration

Antes de realizar este paso, su instancia Workload Protection ya debe estar creada. El CRN de instancia Workload Protection se utiliza para crear y configurar el perfil de confianza para interactuar con App Configuration.

  • Requiere las siguientes políticas de acceso:
    • Cuenta de empresa (Viewer + Usage Report Viewer) para validar el tipo de cuenta.
    • App Configuration (Manager + Configuration Aggregator Reader)
  • CRN (Relación de confianza - IBM Cloud Servicios) es la Workload Protection CRN
    • Por ejemplo: crn:v1:bluemix:public:sysdig-secure:us-south:a/1560be5426584bf8a43e75xxxxxxxxxx:299e4ca4-d96c-4fba-9691-xxxxxxxx::

Puede crear este perfil de confianza con los siguientes comandos de la CLI:

Cree el perfil de confianza (puede modificar el nombre). Guarda el ID para utilizarlo más adelante. Será referenciado más adelante como ibmcspm-tp-wp-app-config-ID:

ibmcloud iam trusted-profile-create ibmcspm-wp-app-config --description "Trusted profile for Workload Protection interaction with Config Service"

Asigna la relación de confianza correspondiente. Sustituya workload-protection-instance-crn por su Workload Protection CRN:

ibmcloud iam trusted-profile-identity-create ibmcspm-wp-app-config --id workload-protection-instance-crn --id-type CRN

Cree la política para el perfil de confianza de la cuenta de empresa:

ibmcloud iam trusted-profile-policy-create ibmcspm-wp-app-config -r Viewer,"Usage Report Viewer" --service-name enterprise

Cree la Política para el perfil de confianza para App Configuration:

ibmcloud iam trusted-profile-policy-create ibmcspm-wp-app-config -r Manager,"Configuration Aggregator Reader" --service-name apprapp

Paso 2: Crear la instancia App Configuration

En este paso, se crea una instancia App Configuration que su Workload Protection utiliza para recopilar todas las definiciones de recursos para implementar el CSPM IBM Cloud.

Puede crear una nueva instancia App Configuration con el siguiente comando CLI. Puede modificar el plan, la región o el grupo de recursos. Consulte este documento para obtener más información.

Guarda el CRN y el GUID para utilizarlos más adelante. Más adelante se hará referencia a ellos como app-config-aggregator-CRN y app-config-aggregator-ID respectivamente.

Ejecute el siguiente comando para crear la instancia App Configuration. Sustituya el plan, la región o el grupo de recursos en función de sus necesidades:

ibmcloud resource service-instance-create "ibmcspm-app-config" "apprapp" "basic" "us-south" -g Default

Observe que el CRN (ID de la salida) se referencia como app-config-aggregator-CRN. Del mismo modo, el ID de instancia (GUID de la salida) se referencia como app-config-aggregator-ID. Guarde esos valores, ya que se utilizarán en los pasos siguientes.

Paso 3: Configurar la instancia App Configuration para recopilar configuraciones de servicio de toda la empresa

Acceda a su instancia App Configuration en la consola IBM Cloud. Se encuentra en las herramientas Resource List y Developer.

Siga los pasos para Habilitar agregador de configuración - Cuenta de empresa.

Paso 4: Incorpore su IBM Cloud Enterprise a su instancia Workload Protection

En este último paso, configura tu instancia Workload Protection necesitas utilizar los siguientes valores de los pasos anteriores:

  • Su Workload Protection nombre de instancia (workload-protection-instance-name).
  • El App Configuration CRN (app-config-aggregator-CRN) que creó en Paso 2.
  • El perfil de confianza de Workload Protection para interactuar con App Configuration (ibmcspm-tp-wp-app-config-ID) que creó en Paso 1.

Si anteriormente ha incorporado alguna otra cuenta de IBM Cloud o ha añadido algún otro parámetro, asegúrese de mantener los parámetros existentes. Puede ver los parámetros utilizados de su instancia ejecutando ibmcloud resource service-instance <workload-protection-instance-name> --output json y sustituyendo <workload-protection-instance-name> por el nombre de su instancia Workload Protection.

Ejecute el siguiente comando CLI para actualizar su instancia Workload Protection para embarcar su IBM Cloud Enterprise. Sustituya <workload-protection-instance-name> por el nombre de su instancia Workload Protection, <app-config-aggregator-CRN> por el CRN de su instancia App Configuration y <ibmcspm-tp-wp-app-config-ID> por el ID del perfil de confianza creado en el paso 2.

ibmcloud resource service-instance-update "<workload-protection-instance-name>" -p '{"enable_cspm": true, "target_accounts": [{"account_type": "ENTERPRISE", "config_crn": "<app-config-aggregator-CRN>", "trusted_profile_id": "<ibmcspm-tp-wp-app-config-ID>"}]}' -g Default