Administra una postura de seguridad

En esta página, se describe cómo puedes configurar y usar el servicio de postura de seguridad después de activar Security Command Center. Para comenzar, debes crear una postura que incluya tus políticas, organizadas en conjuntos de políticas y, luego, implementarla mediante una implementación de postura. Después de implementar una postura, puedes supervisar el desvío y definir mejor tu postura con el tiempo.

Antes de comenzar

Completa estas tareas antes de finalizar las tareas restantes de esta página.

Activa el nivel Premium o Enterprise de Security Command Center

Verifica que el nivel Premium de Security Command Center o nivel empresarial esté activado a nivel de la organización.

Si quieres usar los detectores de Security Health Analytics como políticas, selecciona el servicio de Security Health Analytics durante el proceso de activación.

Configurar los permisos

Para obtener los permisos que necesitas para usar la postura, pídele a tu administrador que te otorgue el rol de IAM Administrador de la postura de seguridad (roles/securityposture.admin). Para obtener más información sobre cómo otorgar roles, consulta Administra el acceso.

Es posible que también puedas obtener los permisos necesarios a través de los roles personalizados o de otros roles predefinidos.

Para obtener más información sobre las funciones de postura de seguridad y los permisos de postura de seguridad, consulta IAM para activaciones a nivel de la organización.

Configura Google Cloud CLI

Debes usar la versión 461.0.0 de Google Cloud CLI o una posterior.

Puedes usar las muestras de gcloud CLI en esta página desde cualquiera de los siguientes entornos de desarrollo:

  • Cloud Shell: Para usar una terminal en línea con la CLI de gcloud ya configurada, activa Cloud Shell.

    En la parte inferior de esta página, se inicia una sesión de Cloud Shell y se muestra una ventana de línea de comandos. La sesión puede tardar unos segundos en inicializarse.

  • Shell local: Para usar la CLI de gcloud en un entorno de desarrollo local, instala e inicializa la CLI de gcloud.

A fin de configurar la CLI de gcloud para usar la identidad temporal como cuenta de servicio y autenticarse en las APIs de Google, en lugar de tus credenciales de usuario, ejecuta el siguiente comando:

gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL

Para obtener más información, consulta Identidad temporal como cuenta de servicio.

Habilita las APIs

Habilita el Servicio de políticas de la organización y las APIs del servicio de postura de seguridad:

gcloud services enable orgpolicy.googleapis.com  securityposture.googleapis.com

Configura la conexión a AWS

Para usar los detectores integrados de Security Health Analytics que son específicos de AWS, debes activar Security Command Center Enterprise y conectarte a AWS para detectar vulnerabilidades.

Crea e implementa una postura

Para comenzar a usar una postura de seguridad, debes completar los siguientes pasos:

  • Crea un archivo YAML de posición que defina las políticas que se aplican a tu posición de seguridad.

  • Crear una posición en Google Cloud basada en el archivo YAML de posición

  • Implementa la postura.

En las siguientes secciones, se proporcionan instrucciones detalladas.

Crea un archivo YAML de posición

Una postura consta de uno o más conjuntos de políticas que implementas juntos. Estos conjuntos de políticas incluyen todas las políticas preventivas y de detective que deseas incluir en tu postura.

Para crear tu postura, realiza una de las siguientes acciones:

Las posiciones son archivos YAML. Para obtener más información sobre el archivo posture.yaml y sus pares clave-valor, consulta Archivo YAML de postura de seguridad.

Crea un archivo de posición a partir de una plantilla de posición predefinida

Puedes usar una plantilla de posición predefinida para crear un archivo de posición.

Console

  1. En la consola de Google Cloud, ve a la página Administración de posturas.

    Ir a Administración de posturas

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En la pestaña Plantillas, haz clic en la plantilla que deseas usar.

  4. En la página Detalles de la plantilla, haz clic en Crear postura.

  5. Proporciona un nombre único para la posición y haz clic en Crear. Se abrirá la página Detalles de la postura.

  6. Realiza una de las acciones siguientes:

gcloud

  1. Revisa las plantillas de postura predefinidas para determinar cuáles se aplican a tu entorno. Puedes aplicar algunas de ellas sin hacer ningún cambio, pero otras requieren que personalices las políticas para que coincidan con tu entorno.

  2. Usa uno de los siguientes métodos para copiar los archivos YAML en tu propio editor de texto:

    • Copia el archivo YAML del contenido de referencia en las plantillas de postura predefinidas.

    • Ejecuta el comando gcloud scc posture-templates describe para copiar el archivo YAML.

    gcloud scc posture-templates describe \
    organizations/ORGANIZATION_ID/locations/LOCATION/postureTemplates/POSTURE_TEMPLATE \
    --revision-id=REVISION_ID

    Reemplaza los siguientes valores:

    • ORGANIZATION_ID es la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

    • LOCATION es la ubicación en la que deseas implementar y almacenar la posición. La única ubicación admitida es global.

    • POSTURE_TEMPLATE es el nombre de la plantilla de la postura predefinida, como se describe en las plantillas de postura predefinidas.

    • REVISION_ID es la versión de revisión de la posición predefinida. Si no incluyes el ID de revisión, se muestra la versión más reciente de la posición predefinida.

    Por ejemplo, para ver la IA segura, la posición predefinida esencial en la organización 3589215982, ejecuta lo siguiente:

    gcloud scc posture-templates describe
    organizations/3589215982/locations/global/postureTemplates/secure_ai_essential
    --revision-id=v.1.0

  3. Realiza una de las acciones siguientes:

    • Si puedes usar la posición sin realizar ningún cambio (por ejemplo, usaste una de las plantillas _essentials), puedes crearla. Para obtener instrucciones, consulta Crea una postura.

    • Si necesitas modificar alguno de los conjuntos o las políticas de políticas, completa Modifica un archivo YAML de posición.

Crear un archivo de postura mediante la extracción de políticas de un entorno existente

Puedes extraer las políticas (políticas de la organización, incluidas las políticas personalizadas y todos los detectores de Security Health Analytics, incluidos los detectores personalizados) que configuraste en un proyecto, una carpeta o una organización existente para crear un archivo de postura. No puedes extraer políticas de una organización, carpeta o proyecto que ya tiene una postura aplicada.

Con este comando, solo se extraen las políticas que configuraste antes para la organización, la carpeta o el proyecto, y no las políticas de la organización o de las carpetas superiores.

Si conectaste Security Command Center Enterprise a AWS, este comando también extrae los detectores específicos de AWS (Vista previa).

  1. Ejecuta el comando gcloud scc postures extract para extraer las políticas de la organización y los detectores de estadísticas del estado de seguridad existentes en tu entorno.

    gcloud scc postures extract \
    POSTURE_NAME --workload=WORKLOAD

    Reemplaza los siguientes valores:

    • POSTURE_NAME es el nombre del recurso relativo de la postura. Por ejemplo, organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID

      • LOCATION es global.

      • POSTURE_ID es un nombre alfanumérico para tu postura que es único para tu organización. POSTURE_ID está limitado a 63 caracteres.

    • WORKLOAD es el proyecto, la carpeta o la organización del que deseas extraer las políticas. La carga de trabajo es una de las siguientes opciones:

      • projects/PROJECT_NUMBER

      • folder/FOLDER_ID

      • organizations/ORGANIZATION_ID

    Por ejemplo, para extraer políticas de la carpeta 3589215982 en la organización 6589215984, ejecuta lo siguiente:

    gcloud scc postures extract organizations/6589215984/locations/global/postures/myStagingPosture folder/3589215982 > posture.yaml

  2. Abre el archivo posture.yaml resultante para editarlo.

  3. Realiza una de las acciones siguientes:

    • Si puedes usar la posición sin realizar ningún cambio (por ejemplo, usaste una de las plantillas _essentials), puedes crearla. Para obtener instrucciones, consulta Crea una postura.

    • Si necesitas modificar alguno de los conjuntos o las políticas de políticas, completa Modifica un archivo YAML de posición.

Crea un recurso de Terraform con definiciones de políticas

Puedes crear una configuración de Terraform para crear un recurso de posición.

Por ejemplo, puedes crear un recurso de posición que incluya restricciones de políticas de la organización integradas y personalizadas, y detectores de estadísticas del estado de seguridad integrados y personalizados. La compatibilidad con la administración de la postura en los detectores integrados de Security Health Analytics que son específicos de AWS se encuentra en Preview.

resource "google_securityposture_posture" "posture_example" {
  posture_id  = "<POSTURE_ID>"
  parent      = "organizations/<ORGANIZATION_ID>"
  location    = "global"
  state       = "ACTIVE"
  description = "a new posture"
  policy_sets {
    policy_set_id = "org_policy_set"
    description   = "set of org policies"
    policies {
      policy_id = "canned_org_policy"
      constraint {
        org_policy_constraint {
          canned_constraint_id = "storage.uniformBucketLevelAccess"
          policy_rules {
            enforce = true
          }
        }
      }
    }
  }
  policy_sets {
    policy_set_id = "sha_policy_set"
    description   = "set of sha policies"
    policies {
      policy_id = "sha_builtin_module"
      constraint {
        security_health_analytics_module {
          module_name             = "BIGQUERY_TABLE_CMEK_DISABLED"
          module_enablement_state = "ENABLED"
        }
      }
      description = "enable BIGQUERY_TABLE_CMEK_DISABLED"
    }
    policies {
      policy_id = "aws_sha_builtin_module"
      constraint {
        security_health_analytics_module {
          module_name             = "S3_BUCKET_LOGGING_ENABLED"
          module_enablement_state = "ENABLED"
        }
      }
      description = "enable S3_BUCKET_LOGGING_ENABLED"
    }
    policies {
      policy_id = "sha_custom_module"
      constraint {
        security_health_analytics_custom_module {
          display_name = "custom_SHA_policy"
          config {
            predicate {
              expression = "resource.rotationPeriod > duration('2592000s')"
            }
            custom_output {
              properties {
                name = "duration"
                value_expression {
                  expression = "resource.rotationPeriod"
                }
              }
            }
            resource_selector {
              resource_types = ["cloudkms.googleapis.com/CryptoKey"]
            }
            severity       = "LOW"
            description    = "Custom Module"
            recommendation = "Testing custom modules"
          }
          module_enablement_state = "ENABLED"
        }
      }
    }
  }
}

Para obtener más información, consulta google_securityposture_posture.

Modifica un archivo YAML de posición

Completa los siguientes pasos para modificar un archivo YAML de posición:

  1. Abre el archivo YAML de postura en un editor de texto.

  2. Verifica los valores name, description y state al comienzo del archivo.

    name: organizations/ORGANIZATION_ID/locations/LOCATION/posture/POSTURE_ID
    description: DESCRIPTION
    state: STATE
    

    Consulta Archivo YAML de postura de seguridad para obtener una descripción de estos valores clave.

    Por ejemplo:

    name: organizations/3589215982/locations/global/posture/stagingAIPosture
    description: This posture applies to staging environments for Vertex AI.
    state: ACTIVE
    
  3. Personaliza las políticas del archivo para que cumplan con tus requisitos:

    1. Revisa las políticas existentes y sus valores. En el caso de las políticas que requieren información específica de tu entorno, establece los valores de forma adecuada. Por ejemplo, para la política ainotebooks.accessMode en la posición predefinida extendida de IA segura, agrega los modos de acceso permitidos en policy_rules:

        - policy_id: Define access mode for Vertex AI Workbench notebooks and instances
          compliance_standards:
          - standard: NIST SP 800-53
            control: AC-3(3)
          - standard: NIST SP 800-53
            control: AC-6(1)
          constraint:
            org_policy_constraint:
              canned_constraint_id: ainotebooks.accessMode
              policy_rules:
              - values:
                  allowed_values: service-account
          description: This list constraint defines the modes of access allowed to Vertex AI Workbench notebooks and instances where enforced. The allow or deny list can specify multiple users with the service-account mode or single-user access with the single-user mode. The access mode to be allowed or denied must be listed explicitly.
      
    2. Agrega restricciones adicionales a las políticas de la organización, como se documenta en Restricciones de las políticas de la organización. Si defines una política de la organización personalizada, asegúrate de que el archivo YAML incluya la definición de restricción personalizada. No puedes usar una restricción personalizada que creaste con otros métodos (por ejemplo, con la consola de Google Cloud). Por ejemplo, es posible que quieras establecer la restricción compute.trustedImageProjects para definir los proyectos que se pueden usar para el almacenamiento de imágenes y la creación de instancias de disco. Si copias este ejemplo, asegúrate de reemplazar allowed_values por una lista de proyectos adecuada:

        - policy_id: Define projects with trusted images.
          compliance_standards:
          - standard:
            control:
          constraint:
            org_policy_constraint:
              canned_constraint_id: compute.trustedImageProjects
              policy_rules:
              - values:
                  allowed_values:
                  - project1
                  - project2
                  - projectN
          description: This is a complete list of projects from which images can be used.
      
    3. Agrega detectores adicionales de Security Health Analytics, como los documentados en los resultados de Security Health Analytics. Por ejemplo, agrega un detector de Security Health Analytics para crear un resultado si un proyecto no usa una clave de API para la autenticación:

        - policy_id: API Key Exists
          constraint:
            securityHealthAnalyticsModule:
              moduleEnablementState: ENABLED
              moduleName: API_KEY_EXISTS
      

      Como otro ejemplo, agrega un módulo personalizado de Security Health Analytics para detectar si los conjuntos de datos de Vertex AI están encriptados:

        - policy_id: CMEK key is use for Vertex AI DataSet
          compliance_standards:
          - standard: NIST SP 800-53
            control: SC-12
          - standard: NIST SP 800-53
            control: SC-13
          constraint:
            security_health_analytics_custom_module:
              display_name: "vertexAIDatasetCMEKDisabled"
              config:
                customOutput: {}
                predicate:
                  expression: "!has(resource.encryptionSpec)"
                resource_selector:
                  resource_types:
                  - aiplatform.googleapis.com/Dataset
                severity: CRITICAL
                description: "When enforced, this detector finds whether a dataset is not encrypted using CMEK."
                recommendation: "Restore the SHA module. See https://cloud.google.com/security-command-center/docs/custom-modules-sha-overview."
              module_enablement_state: ENABLED
      

      Como otro ejemplo, para Security Command Center Enterprise, agrega un detector de Security Health Analytics que sea específico de AWS (Vista previa):

      - policy_set_id: AWS policy set
        description:  Policy set containing AWS built-in SHA modules for securing S3 buckets.
        policies:
        - policy_id: S3 bucket replication enabled
          compliance_standards:
          - standard: NIST 800-53 R5
            control: SI-13(5)
          constraint:
            securityHealthAnalyticsModule:
              moduleEnablementState: ENABLED
              moduleName: S3_BUCKET_REPLICATION_ENABLED
          description: This control checks whether an Amazon S3 bucket has Cross-Region Replication enabled. The control fails if the bucket does not have Cross-Region Replication enabled or if Same-Region Replication is also enabled.
      
        - policy_id: S3 bucket logging enabled
          compliance_standards:
          - standard: NIST 800-53 R5
            control: SI-7(8)
          - standard: PCI DSS 3.2.1
            control: 10.3.1
          constraint:
            securityHealthAnalyticsModule:
              moduleEnablementState: ENABLED
              moduleName: S3_BUCKET_LOGGING_ENABLED
          description: AWS S3 Server Access Logging feature records access requests to storage buckets which is useful for security audits. By default, server access logging is not enabled for S3 buckets.
      

      Si agregas un detector específico de AWS, debes implementar la postura a nivel de la organización.

  4. Sube tu archivo de postura a un repositorio de código fuente con control de versión para que puedas hacer un seguimiento de los cambios que le realices a lo largo del tiempo.

Crea una postura

Completa esta tarea para crear un recurso de postura en Security Command Center que puedas implementar. Si creaste una posición a partir de una plantilla de posición predefinida con la consola de Google Cloud, el recurso de posición se crea automáticamente para ti.

gcloud

  1. Ejecuta el comando gcloud scc postures create para crear una posición con el archivo posture.yaml.

    gcloud scc postures create \
    POSTURE_NAME --posture-from-file=POSTURE_FROM_FILE

    Reemplaza los siguientes valores:

    • POSTURE_NAME es el nombre del recurso relativo de la postura. Por ejemplo, organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID

      • LOCATION es global.

      • POSTURE_ID es un nombre alfanumérico para tu postura que es único para tu organización. POSTURE_ID está limitado a 63 caracteres.

    • POSTURE_FROM_FILE es la ruta de acceso relativa o absoluta al archivo posture.yaml.

    Por ejemplo, para crear una postura con el ID posture-example-1 en la organización organizations/3589215982, ejecuta lo siguiente:

    gcloud scc postures create organizations/3589215982/locations/global/postures/posture-example-1 --posture-from-file=posture.yaml

    Si el proceso de creación de posiciones falla, bórrala, soluciona el error y vuelve a intentarlo.

  2. Para verificar que la postura se haya creado correctamente, consulta Visualiza una postura.

Para aplicar esta postura a tu entorno, debes implementarla.

Terraform

Si creaste una configuración de Terraform para el recurso de posición, debes aprovisionarla mediante la canalización de infraestructura como código.

Para obtener más información, consulta Terraform en Google Cloud.

Implementa una postura

Después de crear una postura, debes implementarla en un proyecto, una carpeta o una organización para poder aplicar las políticas y sus definiciones a recursos específicos de tu organización y supervisar los desvíos. Solo puedes implementar una postura en un proyecto, organización o carpeta.

Verifica que el estado de tu postura sea ACTIVE.

Cuando implementas la posición, se llevan a cabo las siguientes acciones:

  • Se aplican las definiciones de las políticas de la organización y los detectores de Security Health Analytics.

  • La restricción personalizada para las políticas de la organización personalizadas se crea con un ID de restricción a fin de incluir el ID de revisión de la postura como sufijo del ID de restricción que definiste en la posición.

  • El estado predeterminado de los módulos personalizados es Enabled.

Console

  1. En la consola de Google Cloud, ve a la página Administración de posturas.

    Ir a Administración de posturas

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En la pestaña Posture, haz clic en la posición que deseas implementar.

  4. En la página Detalles de la postura, selecciona la revisión de la posición que deseas implementar.

  5. Haz clic en Implementar en el nodo.

  6. Selecciona la organización, la carpeta o el proyecto en el que deseas implementar la postura. Si tu postura incluye un detector específico de AWS, debes implementarla a nivel de la organización (Vista previa).

  7. Haz clic en Seleccionar.

  8. Repite los pasos 5 a 7 para cada organización, carpeta o proyecto al que desees aplicar la postura.

gcloud

Ejecuta el comando gcloud scc posture-deployments create para implementar una postura en un proyecto, una carpeta o una organización.

gcloud scc posture-deployments create \
POSTURE_DEPLOYMENT_NAME  --posture-name=POSTURE_NAME \
--posture-revision-id=POSTURE_REVISION_ID \
--target-resource=TARGET_RESOURCE

Reemplaza los siguientes valores:

  • POSTURE_DEPLOYMENT_NAME es el nombre del recurso relativo para la implementación de la postura. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

    • LOCATION es global.

    • POSTURE_DEPLOYMENT_ID es un nombre único para la implementación de postura. POSTURE_DEPLOYMENT_ID está limitado a 63 caracteres.

  • --posture-name=POSTURE_NAME es el nombre de la postura que implementas. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

    • LOCATION es global.

    • POSTURE_ID es un nombre alfanumérico para tu postura que es único para tu organización.

  • --posture-revision-id=POSTURE_REVISION_ID es la revisión de postura que deseas implementar. Puedes obtenerla a partir de la respuesta que recibes cuando creas la posición o la ves.

  • --target-resource=TARGET_RESOURCE es el nombre de la organización, la carpeta o el proyecto en el que deseas implementar la posición. Puedes usar uno de los siguientes formatos:

    • organizations/ORGANIZATION_ID
    • folders/FOLDER_ID
    • projects/PROJECT_NUMBER

    Si tu postura incluye un detector específico de AWS, debes implementarla a nivel de la organización (Vista previa).

Por ejemplo, para implementar una posición, ejecuta el siguiente comando:

gcloud scc posture-deployments create
organizations/3589215982/locations/global/postureDeployments/postureDeployment123
--posture-name=organizations/3589215982/locations/global/postures/StagingAIPosture
--posture-revision-id=version1 --target-resource=projects/4589215982

Puedes ver la información del estado a medida que se completa el comando. Si el proceso de creación de la implementación de postura falla, borra la implementación, soluciona el error y vuelve a intentarlo.

Terraform

Puedes crear un recurso de Terraform para implementar una postura.

  resource "google_securityposture_posture_deployment" "posture_deployment_example" {
    posture_deployment_id          = "<POSTURE_DEPLOYMENT_ID>"
    parent = "organizations/<ORGANIZATION_ID>"
    location = "global"
    description = "a new posture deployment"
    target_resource = "<TARGET_RESOURCE>"
    posture_id = "<POSTURE_NAME>"
    posture_revision_id = "<POSTURE_REVISION_ID>"
  }

Para obtener más información, consulta google_securityposture_posture_deployment.

Después de crear el recurso de Terraform, debes aprovisionarlo con la canalización de infraestructura como código.

Visualiza la información de implementación de posturas y posturas

Puedes ver la información de implementación de postura para ver información como la siguiente:

  • Qué posiciones se implementan y en qué lugar de la jerarquía de recursos (organizaciones, proyectos y carpetas) se aplican

  • Las revisiones y el estado de las posturas

  • Los detalles operativos de una implementación de postura

Cómo ver una posición

Puedes ver información sobre una posición (como su estado y las definiciones de políticas).

Console

  1. En la consola de Google Cloud, ve a la página Administración de posturas.

    Ir a Administración de posturas

  2. Selecciona la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En la pestaña Postures, haz clic en la posición que deseas ver. Aparecerán los detalles de la postura.

gcloud

Ejecuta el comando gcloud scc postures describe para ver una postura que creaste.

gcloud scc postures describe POSTURE_NAME \
--revision-id=REVISION_ID

Reemplaza los siguientes valores:

  • POSTURE_NAME es el nombre del recurso relativo de la postura. Por ejemplo, organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID

    • LOCATION es global.

    • POSTURE_ID es un nombre alfanumérico para tu postura que es único para tu organización.

  • revision-id=REVISION_ID es una marca opcional que especifica qué versión de la posición se debe ver. Si no incluyes la marca, se mostrará la versión más reciente.

Por ejemplo, para ver una posición con el nombre organizations/3589215982/locations/global/postures/posture-example-1 y el ID de revisión abcdefgh, ejecuta lo siguiente:

gcloud scc postures describe \
organizations/3589215982/locations/global/postures/posture-example-1
--revision-id=abcdefgh

Consulta información sobre una operación de implementación de postura

Ejecuta el comando gcloud scc securityposture-operations describe para ver los detalles de una operación de implementación de postura.

gcloud scc securityposture-operations describe OPERATION_NAME

En el ejemplo anterior, OPERATION_NAME es el nombre del recurso relativo para la operación. El formato es organizations/ORGANIZATION_ID/LOCATION/global/operations/OPERATION_ID. LOCATION es la ubicación en la que implementaste la implementación de postura. Puedes obtener el OPERATION_ID con el argumento --async cuando ejecutes el comando de postura.

Por ejemplo, para ver una operación de análisis con el nombre organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae, ejecuta lo siguiente:

gcloud scc securityposture-operations describe
organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae

Consulta la información sobre una implementación de postura

Puedes ver dónde se implementa una postura, así como el estado de la implementación.

Console

  1. En la consola de Google Cloud, ve a la página Administración de posturas.

    Ir a Administración de posturas

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En la pestaña Postures, haz clic en la posición que implementaste.

  4. Haga clic en la pestaña Deployments. Puedes ver los proyectos, las carpetas y la organización en la que se implementa la postura, así como el estado de la implementación.

gcloud

Ejecuta el comando gcloud scc posture-deployments describe para ver la información sobre una posición implementada.

gcloud scc posture-deployments describe
POSTURE_DEPLOYMENT_NAME

Donde POSTURE_DEPLOYMENT_NAME es el nombre del recurso relativo para la implementación de la postura. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION es global.

  • POSTURE_DEPLOYMENT_ID es un nombre único para la implementación de postura.

Por ejemplo, para ver los detalles de una implementación de postura llamada organizations/3589215982/locations/global/postureDeployments/Posture-deployment-example-1, ejecuta lo siguiente:

gcloud scc posture-deployments describe \
organizations/3589215982/locations/global/postureDeployments/Posture-deployment-example-1

Actualiza una postura y una implementación de postura

Puedes actualizar lo siguiente:

  • El estado de la postura.

  • Las definiciones de políticas en una postura.

  • La organización, las carpetas o los proyectos en los que se implementa una postura.

Actualiza las definiciones de políticas en una posición

Es posible que debas actualizar una postura cuando habilites más servicios de Google Cloud, implementes recursos adicionales o requieras políticas adicionales para satisfacer los requisitos de cumplimiento nuevos o en constante cambio. Si actualizas una revisión de posición implementada, esta tarea crea una revisión de posición nueva. De lo contrario, se actualiza la revisión de posición que especificas cuando ejecutas el comando de actualización.

  1. Abre un archivo YAML en un editor de texto. Agrega los campos que deseas actualizar, junto con sus valores. Si actualizas conjuntos de políticas, asegúrate de que tu archivo incluya todos los conjuntos de políticas que deseas incluir en la posición, incluidos los conjuntos de políticas que ya existen. Para obtener instrucciones, consulta Modifica un archivo YAML de posición.

  2. Ejecuta el comando gcloud scc postures update para actualizar la posición.

    gcloud scc postures update POSTURE_NAME \
    --posture-from-file=POSTURE_FROM_FILE \
    --revision-id=POSTURE_REVISION_ID --update-mask=UPDATE_MASK

    Reemplaza los siguientes valores:

    • POSTURE_NAME es el nombre del recurso relativo de la postura. Por ejemplo, organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID

      • LOCATION es global.

      • POSTURE_ID es un nombre alfanumérico para tu postura que es único para tu organización.

    • POSTURE_FROM_FILE es la ruta de acceso relativa o absoluta al archivo posture.yaml que incluye tus cambios.

    • --revision-id=REVISION_ID es la revisión de postura que deseas implementar. Si la posición está implementada, el servicio de postura de seguridad crea automáticamente una versión nueva de la postura con un ID de revisión diferente y, además, incluye el ID de revisión en el resultado.

    • --update-mask=UPDATE_MASK es la lista de campos que deseas actualizar, en formato separado por comas. Este argumento es opcional. Puedes establecer UPDATE_MASK en uno de los siguientes valores:

      • * o sin especificar: Aplica los cambios que hiciste en los conjuntos de políticas y la descripción de la posición.
      • policy_sets: Aplica solo los cambios que hiciste en los conjuntos de políticas.
      • description: Aplica los cambios que hiciste solo en la descripción de la postura.
      • policy_sets, description: Aplica los cambios que hiciste en los conjuntos de políticas y la descripción de la postura.
      • state: Aplica solo el cambio de estado.

    Por ejemplo, para actualizar una posición con el nombre posture-example-1 en la organización organizations/3589215982/locations/global y el ID de revisión configurado como abcd1234, ejecuta lo siguiente:

    gcloud scc postures update organizations/3589215982/locations/global/posture-example-1 --posture-from-file=posture.yaml --revision-id=abcd1234 --update-mask=policy_sets

    Si el proceso de actualización de postura falla, soluciona el error y vuelve a intentarlo.

  3. Para verificar que la postura se haya actualizado de forma correcta, consulta Cómo ver una postura.

Cambia el estado de una posición

El estado de una postura determina si está disponible para la implementación en un proyecto, una carpeta o una organización.

Una posición puede tener los siguientes estados:

  • DRAFT: La revisión de postura no está lista para la implementación. No puedes implementar una revisión de postura que está en estado DRAFT.

  • ACTIVE: La revisión de postura está disponible para la implementación. Puedes cambiar el estado de ACTIVE a DRAFT o DEPRECATED..

  • DEPRECATED: No se puede implementar una revisión de posición DEPRECATED en un recurso. Debes borrar todas las implementaciones de postura existentes de la posición antes de poder dar de baja una revisión de postura. Si deseas volver a implementar una revisión de posición que dejó de estar disponible, debes cambiar su estado a ACTIVE.

Para cambiar el estado de una posición, ejecuta el comando gcloud scc postures update. No puedes actualizar el estado de la posición al mismo tiempo que actualizas otros campos. Si quieres obtener instrucciones para ejecutar el comando gcloud scc postures update, consulta Modifica un archivo YAML de posición.

Actualizar una implementación de postura

Actualiza una implementación de postura en un proyecto, organización o carpeta para implementar una postura nueva o implementar una revisión nueva de una posición.

Si la revisión de posición que actualizas incluye una restricción de organización personalizada que se borró con la consola de Google Cloud, no puedes actualizar la implementación de postura con el mismo ID de posición. El Servicio de políticas de la organización evita la creación de restricciones personalizadas que tienen el mismo nombre. En su lugar, debes crear una versión nueva de la posición o usar un ID de posición diferente.

Console

  1. En la consola de Google Cloud, ve a la página Administración de posturas.

    Ir a Administración de posturas

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En la pestaña Postures, haz clic en la postura que actualizaste.

  4. En la página Detalles de la postura, selecciona la revisión de la posición que actualizaste.

  5. Haz clic en Implementar en el nodo.

  6. Selecciona la organización, la carpeta o el proyecto en el que deseas implementar la postura. Si ves un mensaje que indica que la implementación ya existe, borra la implementación antes de volver a intentarlo. Si tu postura incluye un detector específico de AWS, debes implementarla a nivel de la organización (Vista previa).

  7. Haz clic en Seleccionar.

gcloud

Ejecuta el comando gcloud scc posture-deployments update para implementar una postura.

gcloud scc posture-deployments update \
POSTURE_DEPLOYMENT_NAME --description=DESCRIPTION \
--update-mask=UPDATE_MASK --posture-id=POSTURE_ID \
--posture-revision-id=POSTURE_REVISION_ID

Reemplaza los siguientes valores:

  • POSTURE_DEPLOYMENT_NAME es el nombre del recurso relativo para la implementación de la postura. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

    • LOCATION es global.

    • POSTURE_DEPLOYMENT_ID es un nombre único para la implementación de postura.

  • --description=DESCRIPTION es la descripción opcional para la posición implementada.

  • --posture-id=POSTURE_ID es el nombre de tu postura que es único para tu organización. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_NAME.

  • --posture-revision-id=POSTURE_REVISION_ID es la revisión de postura que deseas implementar. Puedes obtenerla a partir de la respuesta que recibes cuando creas la postura o visualizas la postura.

  • --update-mask=UPDATE_MASK es la lista de campos que deseas actualizar, en formato separado por comas. Este argumento es opcional.

Por ejemplo, para actualizar una implementación de postura con los siguientes criterios:

  • Organización: organizations/3589215982/locations/global
  • ID de implementación de postura: postureDeploymentexample
  • ID de postura: StagingAIPosture
  • Revisión: version2

Ejecuta el siguiente comando:

gcloud scc posture-deployments update
organizations/3589215982/locations/global/postureDeployments/postureDeploymentexample
--posture-id=organizations/3589215982/locations/global/postures/StagingAIPosture
--posture-revision-id=version2

Puedes ver la información del estado a medida que se completa el comando. Si el proceso de actualización de la implementación de postura falla, borra la implementación, soluciona el error y vuelve a intentarlo.

Supervisa el desvío de postura

Puedes supervisar una posición implementada para detectar el desvío de las políticas definidas dentro de la postura de seguridad. El desvío es un cambio en una política que ocurre fuera de una posición. Por ejemplo, el desvío se produce cuando un administrador cambia una definición de política en la consola en lugar de actualizar la implementación de postura.

El servicio de postura de seguridad crea resultados que puedes ver en la consola de Google Cloud o gcloud CLI cada vez que se producen desvíos.

Console

Si creaste una postura que se aplica a las cargas de trabajo de Vertex AI, puedes supervisar el desvío de dos maneras: en la página Resultados y desde la página Descripción general. Para todas las demás posiciones, puedes supervisar el desvío desde la página Resultados.

Para supervisar los desvíos en la página Resultados, haz lo siguiente:

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

    Ir a hallazgos

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. En el panel Filtros rápidos, selecciona el resultado Incumplimiento de postura. También puedes ingresar el siguiente filtro en Vista previa de la consulta:

    state="ACTIVE" AND NOT mute="MUTED" AND finding_class="POSTURE_VIOLATION"
    
  4. Para ver los detalles de un resultado, haz clic en él.

Para supervisar los desvíos desde la página Descripción general (solo para cargas de trabajo de Vertex AI), haz lo siguiente:

  1. En la consola de Google Cloud, ve a la página Descripción general.

    Ir a Descripción general

  2. Verifica que estés viendo la organización en la que activaste el nivel Premium o Enterprise de Security Command Center.

  3. Revisa el panel Resultados de la carga de trabajo de IA.

    • En la pestaña Vulnerabilidades, se muestran todas las vulnerabilidades relacionadas con los módulos personalizados de Security Health Analytics que se aplican específicamente a las cargas de trabajo de Vertex AI.
    • En la pestaña Desvío de políticas, se muestra cualquier desvío relacionado con las políticas de la organización de Vertex AI que aplicaste en una posición.
  4. Para ver los detalles de un resultado, haz clic en él.

gcloud

En gcloud CLI, ejecuta el siguiente comando para ver los resultados de desvíos:

gcloud scc findings list ORGANIZATION_ID \
--filter="category=\"SECURITY_POSTURE_DRIFT\""

En el ejemplo anterior, ORGANIZATION_ID es el ID de la organización.

Para obtener más información sobre cómo abordar estos resultados, consulta Resultados del servicio de postura de seguridad. Puedes exportar estos resultados de la misma manera en que exportas cualquier otro resultado de Security Command Center. Para obtener más información, consulta Opciones de integración y Exporta datos de Security Command Center.

Para desactivar un hallazgo de desvío, puedes actualizar la implementación de postura con el mismo ID de posición y la misma revisión de posición.

Genera un resultado de desvío con fines de prueba

Después de implementar una postura, puedes supervisar los desvíos de tus políticas. Para ver los resultados de desvíos en acción en un entorno de pruebas, completa lo siguiente:

  1. En la consola, ve a la página Política de la organización.

    Ir a Política de la organización

  2. Edita una de las políticas que definiste en la posición implementada. Por ejemplo, si usas una posición segura de IA predefinida, puedes editar la política Restringir el acceso de IP pública en instancias y notebooks nuevos de Vertex AI Workbench.

  3. Después de cambiar la política, haz clic en Establecer política.

  4. Ir a la página Resultados

    Ir a hallazgos

  5. En el panel Filtros rápidos, en la sección Nombre visible de la fuente, selecciona Postura de seguridad. Un resultado relacionado con tu cambio debería aparecer en cinco minutos.

  6. Para ver los detalles de un hallazgo, haz clic en él.

Borrar una implementación de postura

Puedes borrar una implementación de postura si no se implementó de forma correcta, si ya no necesitas una posición en particular o si ya no quieres que se asigne una posición en particular a un proyecto, organización o carpeta. Para borrar una implementación de postura, esta debe tener uno de los siguientes estados:

  • ACTIVE
  • CREATE_FAILED
  • UPDATE_FAILED
  • DELETE_FAILED

Para verificar el estado de una implementación de postura, consulta Consulta información sobre una implementación de postura.

Cuando borras una implementación de postura, la quitas del recurso (tu organización, carpeta o proyecto) al que la asignaste.

Estos son los resultados de los distintos tipos de políticas:

  • Cuando borras una implementación de postura que incluye políticas de la organización personalizadas, estas se borran. Sin embargo, la restricción personalizada sigue existiendo.

  • Cuando borras una implementación de postura que incluye detectores integrados de Security Health Analytics, el estado final de los módulos de Security Health Analytics depende de la organización, la carpeta o el proyecto en el que existía la implementación.

    • Si implementaste una posición en una carpeta o un proyecto, los detectores integrados de Security Health Analytics heredan su estado de la organización o carpeta superior.
    • Si implementaste una postura a nivel de la organización, los detectores integrados de Security Health Analytics revierten al estado predeterminado. Para obtener una descripción de los estados predeterminados, consulta Habilita e inhabilita detectores.

Ejecuta el comando gcloud scc posture-deployments delete para borrar una implementación de postura.

gcloud scc posture-deployments delete
POSTURE_DEPLOYMENT_NAME

POSTURE_DEPLOYMENT_NAME es el nombre del recurso relativo para la implementación de la postura. El formato es organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION es global.

  • POSTURE_DEPLOYMENT_ID es el nombre único para la implementación de postura.

Por ejemplo, para borrar una implementación de postura llamada organizations/3589215982/locations/global/postureDeployments/posture-deployment-example-1, ejecuta lo siguiente:

gcloud scc posture-deployments delete \
organizations/3589215982/locations/global/postureDeployments/posture-deployment-example-1

Borra una posición

Cuando borras una posición, también borras todas las revisiones. No puedes borrar una postura implementada. Debes borrar la implementación de postura para poder completar esta tarea.

Ejecuta el comando gcloud scc postures delete para borrar una postura.

gcloud scc postures delete POSTURE_NAME

POSTURE_NAME es el nombre del recurso relativo de la posición. Por ejemplo:organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID El ID de postura es un nombre alfanumérico para tu postura que es único para tu organización. LOCATION es global.

Por ejemplo, para borrar una posición llamada organizations/3589215982/locations/global/postures/posture-example-1, ejecuta lo siguiente:

gcloud scc postures delete \
organizations/3589215982/locations/global/postures/posture-example-1

¿Qué sigue?