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, implementar la postura mediante una implementación de posturas. 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 completar las tareas restantes de esta página.

Activa el nivel Premium o Enterprise de Security Command Center

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

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

Configurar los permisos

Si quieres obtener los permisos que necesitas para usar la postura, pídele a tu administrador que te otorgue el 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 funciones personalizadas o, también, otras funciones predefinidas.

Si quieres obtener más información sobre las funciones de postura de seguridad y los permisos de postura de seguridad, consulta IAM para las 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.

En la consola de Google Cloud, activa Cloud Shell.

Activar Cloud Shell

En la parte inferior de la consola de Google Cloud, se inicia una sesión de Cloud Shell en la que se muestra una ventana de línea de comandos. Cloud Shell es un entorno de shell con Google Cloud CLI ya instalada y con valores ya establecidos para el proyecto actual. La sesión puede tardar unos segundos en inicializarse.

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 con AWS

Si deseas usar detectores de Security Health Analytics integrados y 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 lo siguiente:

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

  • Crear una postura en Google Cloud que se base en el archivo YAML de postura

  • Implementa la postura.

En las siguientes secciones, se proporcionan instrucciones detalladas.

Crea un archivo YAML de postura

Una postura consta de uno o más conjuntos de políticas que puedes implementar en conjunto. Estos conjuntos de políticas incluyen todas las políticas preventivas y de detección 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 postura a partir de una plantilla de postura predefinida

Puedes usar una plantilla de postura predefinida para crear un archivo de postura.

Console

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

    Ir a Administración de la postura

  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 quieres usar.

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

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

  6. Realiza una de las acciones siguientes:

gcloud

  1. Revisa las plantillas de postura predefinida para determinar cuáles se aplican a tu entorno. Puedes aplicar algunos de ellos sin realizar cambios, pero otros 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 predefinida.

    • 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 postura. 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 postura predefinida. Si no incluyes el ID de revisión, se mostrará la versión más reciente de la postura predefinida.

    Por ejemplo, para ver la postura predefinida de aspectos esenciales de la IA segura 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 postura sin hacer ningún cambio (por ejemplo, si usaste una de las plantillas _Essentials), puedes crearla. Para obtener instrucciones, consulta Crea una postura.

    • Si necesitas modificar alguno de los conjuntos de políticas o políticas, completa Modifica un archivo YAML de postura.

Crea 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 existentes para crear un archivo de postura. No puedes extraer políticas de una organización, carpeta o proyecto que ya tenga una postura aplicada.

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

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 de tu organización. POSTURE_ID tiene un límite de 63 caracteres.

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

      • 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 workload=folder/3589215982 > posture.yaml

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

  3. Realiza una de las acciones siguientes:

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

    • Si necesitas modificar alguno de los conjuntos de políticas o políticas, completa Modifica un archivo YAML de postura.

Crea un recurso de Terraform con definiciones de políticas

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

Por ejemplo, puedes crear un recurso de postura que incluya restricciones de políticas de la organización integradas y personalizadas, así como detectores de Security Health Analytics integrados y personalizados. La asistencia de administración de la postura para los detectores integrados de Security Health Analytics que son específicos de AWS se encuentra en Vista previa.

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 postura

Completa los siguientes pasos para modificar un archivo YAML de postura:

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

  2. Verifica los elementos 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 pares clave-valor.

    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 cumpla con tus requisitos:

    1. Revisa las políticas existentes y sus valores. Para 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 IA segura, la postura predefinida extendida, 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 la restricción personalizada. No puedes usar una restricción personalizada que creaste con otros métodos (por ejemplo, mediante la consola de Google Cloud). Por ejemplo, te recomendamos establecer la restricción compute.trustedImageProjects a fin de definir que los proyectos se puedan 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 de Security Health Analytics, como los que se documentan en Resultados de Security Health Analytics. Por ejemplo, agrega un detector de Security Health Analytics a fin de 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 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 el 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 hagas 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 postura a partir de una plantilla de postura predefinida con la consola de Google Cloud, el recurso de postura se crea de forma automática para ti.

gcloud

  1. Ejecuta el comando gcloud scc postures create para crear una postura 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 tiene un límite de 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 posturas falla, borra la postura, soluciona el error y vuelve a intentarlo.

  2. Para verificar que la postura se creó de manera correcta, consulta Cómo ver una postura.

Para aplicar esta postura a tu entorno, debes implementar la postura.

Terraform

Si creaste una configuración de Terraform para el recurso de postura, 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, impleméntala en un proyecto, una carpeta o una organización para que puedas aplicar las políticas y sus definiciones a recursos específicos de tu organización y supervisar el desvío. Solo puedes implementar una postura en un proyecto, organización o carpeta.

Verifica que el estado de tu postura sea ACTIVE.

Cuando implementas la postura, ocurren las siguientes acciones:

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

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

  • El estado predeterminado de los módulos personalizados se establece en Habilitado.

Console

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

    Ir a Administración de la postura

  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 Postura, haz clic en la postura que deseas implementar.

  4. En la página Detalles de la postura, selecciona la revisión de la postura 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 implementar la postura 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 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 la postura. POSTURE_DEPLOYMENT_ID tiene un límite de 63 caracteres.

  • --posture-name=POSTURE_NAME es el nombre de la postura que estás implementando. 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 la postura que deseas implementar. Puedes obtenerla de la respuesta que recibes cuando creas la postura o visualizas la postura.

  • --target-resource=TARGET_RESOURCE es el nombre de la organización, la carpeta o el proyecto en el que deseas implementar la postura. 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 implementar la postura a nivel de la organización (vista previa).

Por ejemplo, para implementar una postura, 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, aprovisionándolo con la canalización de infraestructura como código.

Visualiza la información de la postura y del Deployment de la postura

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

  • Qué posturas se implementan y en qué parte 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

Visualiza una postura

Puedes ver información sobre una postura (como sus definiciones de estado y política).

Console

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

    Ir a Administración de la postura

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

  3. En la pestaña Posturas, haz clic en la postura 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 postura ver. Si no incluyes la marca, se muestra la última versión.

Por ejemplo, para ver una postura 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

Ver información sobre una operación de implementación de posturas

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

gcloud scc posture-operations describe OPERATION_NAME

Donde 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 ejecutas 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 posture-operations describe
organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae

Ver información sobre una implementación de postura

Puedes ver en qué lugar se implementa una postura, además del estado de la implementación.

Console

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

    Ir a Administración de la postura

  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 Posturas, haz clic en la postura que implementaste.

  4. Haga clic en la pestaña Deployments. Puedes ver los proyectos, las carpetas y la organización en los 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 la 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 posturas

Puedes actualizar lo siguiente:

  • El estado de la postura.

  • Las definiciones de la política en una postura.

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

Actualiza las definiciones de la política en una postura

Es posible que debas actualizar una postura cuando habilites más servicios de Google Cloud, implementes recursos adicionales o necesites políticas adicionales para cumplir con requisitos de cumplimiento nuevos o cambiantes. Si actualizas una revisión de postura implementada, esta tarea crea una revisión de postura nueva. De lo contrario, se actualiza la revisión de postura que especificas cuando ejecutas el comando update.

  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 el archivo incluya todos los conjuntos de políticas que quieres incluir en la postura, incluidos los conjuntos de políticas que ya existen. Para obtener instrucciones, consulta Modifica un archivo YAML de postura.

  2. Ejecuta el comando gcloud scc postures update para actualizar la postura.

    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 la postura que deseas implementar. Si la postura está implementada en este momento, el servicio de postura de seguridad crea de forma automática una versión nueva de la postura con un ID de revisión diferente y, luego, 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 realizaste a los conjuntos de políticas y la descripción de la postura.
      • policy_sets: Aplica los cambios que hiciste solo a los conjuntos de políticas.
      • description: Aplica los cambios que realizaste solo en la descripción de la postura.
      • policy_sets, description: Aplica los cambios que realizaste a los conjuntos de políticas y la descripción de la postura.
      • state: Aplica solo el cambio de estado.

    Por ejemplo, para actualizar una postura 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 actualizó de forma correcta, consulta Cómo ver una postura.

Cómo cambiar el estado de una postura

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

Una postura puede tener los siguientes estados:

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

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

  • DEPRECATED: Una revisión de postura DEPRECATED no se puede implementar en un recurso. Debes borrar todas las implementaciones de postura existentes de la postura para poder dar de baja una revisión de postura. Si deseas volver a implementar una revisión de postura que ya no está disponible, debes cambiar su estado a ACTIVE.

Para cambiar el estado de una postura, ejecuta el comando gcloud scc postures update. No puedes actualizar el estado de la postura 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 postura.

Actualizar una implementación de postura

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

Si la revisión de postura que estás actualizando 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 postura. Este servicio evita la creación de restricciones personalizadas con el mismo nombre. En su lugar, debes crear una versión nueva de la postura o usar un ID de postura diferente.

Console

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

    Ir a Administración de la postura

  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 Posturas, haz clic en la postura que actualizaste.

  4. En la página Detalles de la postura, selecciona la revisión de la postura 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, bórrala antes de volver a intentarlo. Si tu postura incluye un detector específico de AWS, debes implementar la postura 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 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 la postura.

  • --description=DESCRIPTION es la descripción opcional de 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 la postura que deseas implementar. Puedes obtenerla 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 la implementación de la postura: postureDeploymentexample
  • ID de la 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 postura implementada para detectar el desvío de tus políticas definidas dentro de la postura de seguridad. El desvío es un cambio en una política que ocurre fuera de una postura. 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 la postura.

El servicio de postura de seguridad crea hallazgos que puedes ver en la consola de Google Cloud o en gcloud CLI cada vez que se produce un desvío.

Console

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

Para supervisar el desvío desde la página Hallazgos, haz lo siguiente:

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

    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 hallazgo 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 hallazgo, haz clic en él.

Para supervisar el desvío desde la página Descripción general (solo para cargas de trabajo de Vertex AI), sigue estos pasos:

  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 Hallazgos 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 postura.
  4. Para ver los detalles de un hallazgo, haz clic en él.

gcloud

En gcloud CLI, ejecuta el siguiente comando para ver los resultados de los 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 hallazgos, consulta Resultados del servicio de postura de seguridad. Puedes exportar estos resultados de la misma manera en la que exportas cualquier otro resultado desde 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 y la misma revisión de postura.

Generar un hallazgo de desvío con fines de prueba

Después de implementar una postura, puedes supervisar el desvío 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 postura implementada. Por ejemplo, si usas una postura de IA segura 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 hallazgo relacionado con tu cambio debe aparecer en cinco minutos.

  6. Para ver los detalles del 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 postura particular o si ya no deseas que se asigne una postura específica a un proyecto, organización o carpeta. Para borrar una implementación de postura, esta debe estar en uno de los siguientes estados:

  • ACTIVE
  • CREATE_FAILED
  • UPDATE_FAILED
  • DELETE_FAILED

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

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

El resultado de los diferentes tipos de políticas es el siguiente:

  • 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 de Security Health Analytics integrados, 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 postura en una carpeta o 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 vuelven al estado predeterminado. Para obtener una descripción de los estados predeterminados, consulta Habilita o 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 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 la 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

Borrar una postura

Cuando borras una postura, también se borran todas las revisiones. No puedes borrar una postura que está implementada. Debes borrar la implementación de la 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 postura. 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 postura 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?