Gérer une stratégie de sécurité

Cette page explique comment configurer et utiliser le service de stratégie de sécurité après avoir activé Security Command Center. Pour commencer, vous devez créer une stratégie qui inclut vos stratégies, organisées en ensembles de règles, puis déployer la stratégie à l'aide d'un déploiement de stratégie. Une fois qu'une stratégie est déployée, vous pouvez surveiller sa dérive et l'affiner au fil du temps.

Avant de commencer

Effectuez ces tâches avant de terminer celles qui figurent sur cette page.

Activer le niveau Premium ou Enterprise de Security Command Center

Vérifiez que le niveau Premium ou Enterprise de Security Command Center est activé au niveau de l'organisation.

Si vous souhaitez utiliser les détecteurs Security Health Analytics en tant que stratégies, sélectionnez le service Security Health Analytics pendant le processus d'activation.

Configurer les autorisations

Pour obtenir les autorisations nécessaires pour utiliser la stratégie, demandez à votre administrateur de vous attribuer le rôle IAM Administrateur de stratégie de sécurité (roles/securityposture.admin). Pour en savoir plus sur l'attribution de rôles, consultez la section Gérer les accès.

Vous pouvez également obtenir les autorisations requises via des rôles personnalisés ou d'autres rôles prédéfinis.

Pour en savoir plus sur les rôles et les autorisations liés à la stratégie de sécurité, consultez la page IAM pour les activations au niveau de l'organisation.

Configurer la Google Cloud CLI

Vous devez utiliser la Google Cloud CLI version 461.0.0 ou ultérieure.

Vous pouvez utiliser les exemples gcloud CLI de cette page dans l'un des environnements de développement suivants :

  • Cloud Shell : pour utiliser un terminal en ligne avec gcloud CLI déjà configuré, activez Cloud Shell.

    En bas de cette page, une session Cloud Shell démarre et affiche une invite de ligne de commande. L'initialisation de la session peut prendre quelques secondes.

  • Shell local : pour utiliser gcloud CLI dans un environnement de développement local, installez et initialisez gcloud CLI.

Pour configurer la gcloud CLI afin qu'elle utilise l'emprunt d'identité d'un compte de service pour s'authentifier auprès des Google APIs plutôt que d'utiliser vos identifiants utilisateur, exécutez la commande suivante :

gcloud config set auth/impersonate_service_account SERVICE_ACCT_EMAIL

Pour en savoir plus, consultez Emprunt d'identité d'un compte de service.

Activer les API

Activez les API du service de règles d'administration et du service de stratégie de sécurité:

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

Configurer la connexion à AWS

Pour utiliser les détecteurs Security Health Analytics intégrés et propres à AWS, vous devez activer Security Command Center Enterprise et vous connecter à AWS pour détecter les failles.

Créer et déployer une stratégie

Pour commencer à utiliser une stratégie de sécurité, vous devez effectuer les opérations suivantes:

  • Créez un fichier YAML de stratégie qui définit les stratégies qui s'appliquent à votre stratégie de sécurité.

  • Créez une stratégie dans Google Cloud basée sur le fichier YAML de stratégie.

  • Déployez la stratégie.

Les sections suivantes fournissent des instructions détaillées.

Créer un fichier YAML de stratégie

Une stratégie se compose d'un ou de plusieurs ensembles de règles que vous déployez ensemble. Ces ensembles de règles incluent toutes les règles de prévention et de détection que vous souhaitez inclure dans votre stratégie.

Pour créer votre stratégie, effectuez l'une des opérations suivantes:

Les stratégies sont des fichiers YAML. Pour en savoir plus sur le fichier posture.yaml et ses paires clé/valeur, consultez la section Fichier YAML de la stratégie de sécurité.

Créer un fichier de stratégie à partir d'un modèle de stratégie prédéfini

Vous pouvez utiliser un modèle de stratégie prédéfini pour créer un fichier de stratégie.

Console

  1. Dans la console Google Cloud, accédez à la page Gestion des stratégies.

    Accéder à la page "Gestion de la stratégie"

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans l'onglet Modèles, cliquez sur le modèle que vous souhaitez utiliser.

  4. Sur la page Détails du modèle, cliquez sur Créer une stratégie.

  5. Attribuez un nom unique à la stratégie, puis cliquez sur Créer. La page Posture details (Détails de la stratégie) s'ouvre.

  6. Effectuez l'une des actions suivantes :

gcloud

  1. Examinez les modèles de stratégies prédéfinis pour déterminer ceux qui s'appliquent à votre environnement. Vous pouvez appliquer certaines d'entre elles sans apporter de modifications, mais d'autres vous obligent à personnaliser les règles en fonction de votre environnement.

  2. Utilisez l'une des méthodes suivantes pour copier les fichiers YAML dans votre propre éditeur de texte:

    • Copiez le fichier YAML à partir du contenu de référence dans les modèles de stratégie prédéfinis.

    • Exécutez la commande gcloud scc posture-templates describe pour copier le fichier YAML.

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

    Remplacez les valeurs suivantes :

    • ORGANIZATION_ID est l'organisation dans laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

    • LOCATION est l'emplacement dans lequel vous souhaitez déployer et stocker la stratégie. Le seul emplacement accepté est global.

    • POSTURE_TEMPLATE est le nom du modèle de la position prédéfinie, comme décrit dans la section Modèles de stratégie prédéfinis.

    • REVISION_ID est la version de révision pour la stratégie prédéfinie. Si vous n'incluez pas l'ID de révision, la dernière version de la stratégie prédéfinie s'affiche.

    Par exemple, pour afficher la stratégie prédéfinie d'IA sécurisée, essentielles sous l'organisation 3589215982, exécutez la commande suivante:

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

  3. Effectuez l'une des actions suivantes :

    • Si vous pouvez utiliser la stratégie sans la modifier (par exemple, si vous avez utilisé l'un des modèles _essentials), vous pouvez la créer. Pour savoir comment procéder, consultez Créer une stratégie.

    • Si vous devez modifier l'un des ensembles de stratégies ou des stratégies, suivez les instructions de la section Modifier un fichier YAML de stratégie.

Créer un fichier de stratégie en extrayant les stratégies d'un environnement existant

Vous pouvez extraire les stratégies (règles d'administration, y compris les règles personnalisées et tous les détecteurs Security Health Analytics, y compris les détecteurs personnalisés) que vous avez configurées dans un projet, un dossier ou une organisation existants pour créer un fichier de stratégie. Vous ne pouvez pas extraire de stratégies d'une organisation, d'un dossier ou d'un projet auquel une stratégie est déjà appliquée.

Cette commande extrait uniquement les stratégies que vous avez précédemment configurées pour l'organisation, le dossier ou le projet. Elle n'extrait pas les stratégies des dossiers ou de l'organisation parents.

Si vous avez connecté Security Command Center Enterprise à AWS, cette commande extrait également les détecteurs propres à AWS (Preview).

  1. Exécutez la commande gcloud scc postures extract pour extraire les règles d'administration et les détecteurs Security Health Analytics existants dans votre environnement.

    gcloud scc postures extract \
    POSTURE_NAME --workload=WORKLOAD

    Remplacez les valeurs suivantes :

    • POSTURE_NAME est le nom de ressource relatif de la position. Exemple : organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

      • LOCATION est global.

      • POSTURE_ID est un nom alphanumérique propre à votre organisation. POSTURE_ID est limité à 63 caractères.

    • WORKLOAD est le projet, le dossier ou l'organisation à partir duquel vous extrayez les stratégies. La charge de travail est l'une des suivantes:

      • projects/PROJECT_NUMBER

      • folder/FOLDER_ID

      • organizations/ORGANIZATION_ID

    Par exemple, pour extraire des stratégies du dossier 3589215982 sous l'organisation 6589215984, exécutez la commande suivante:

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

  2. Ouvrez le fichier posture.yaml obtenu pour le modifier.

  3. Effectuez l'une des actions suivantes :

    • Si vous pouvez utiliser la stratégie sans apporter de modifications (par exemple, si vous avez utilisé l'un des modèles _essentials), vous pouvez créer la position. Pour savoir comment procéder, consultez Créer une stratégie.

    • Si vous devez modifier l'un des ensembles de stratégies ou des stratégies, suivez la procédure décrite dans Modifier un fichier YAML de stratégie.

Créer une ressource Terraform avec des définitions de règles

Vous pouvez créer une configuration Terraform pour créer une ressource de stratégie.

Par exemple, vous pouvez créer une ressource de stratégie qui inclut des contraintes de règles d'administration intégrées et personnalisées, ainsi que des détecteurs Security Health Analytics intégrés et personnalisés. La prise en charge de la gestion de la stratégie pour les détecteurs Security Health Analytics intégrés et propres à AWS est disponible en version 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"
        }
      }
    }
  }
}

Pour en savoir plus, consultez google_securityposture_posture.

Modifier un fichier YAML de stratégie

Pour modifier un fichier YAML de stratégie, procédez comme suit:

  1. Ouvrez votre fichier YAML de stratégie dans un éditeur de texte.

  2. Vérifiez les éléments name, description et state au début du fichier.

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

    Pour obtenir une description de ces valeurs de clé, consultez la section Fichier YAML de la stratégie de sécurité.

    Exemple :

    name: organizations/3589215982/locations/global/posture/stagingAIPosture
    description: This posture applies to staging environments for Vertex AI.
    state: ACTIVE
    
  3. Personnalisez les règles du fichier en fonction de vos besoins:

    1. Passez en revue les règles existantes et leurs valeurs. Pour les stratégies qui nécessitent des informations spécifiques à votre environnement, définissez les valeurs de manière appropriée. Par exemple, pour la règle ainotebooks.accessMode dans la stratégie d'IA sécurisée étendue, ajoutez les modes d'accès autorisés sous 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. Ajoutez des contraintes de règle d'administration supplémentaires, comme indiqué dans la section Contraintes liées aux règles d'administration. Si vous définissez une règle d'administration personnalisée, assurez-vous que le fichier YAML inclut la définition de la contrainte personnalisée. Vous ne pouvez pas utiliser une contrainte personnalisée que vous avez créée à l'aide d'autres méthodes (par exemple, à l'aide de la console Google Cloud). Par exemple, vous pouvez définir la contrainte compute.trustedImageProjects pour indiquer que les projets peuvent être utilisés pour le stockage d'images et l'instanciation de disque. Si vous copiez cet exemple, veillez à remplacer allowed_values par une liste de projets appropriée:

        - 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. Ajoutez des détecteurs Security Health Analytics supplémentaires, tels que ceux décrits dans la section Résultats de l'analyse de l'état de la sécurité. Par exemple, ajoutez un détecteur Security Health Analytics pour créer un résultat si un projet n'utilise pas de clé API pour l'authentification:

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

      Vous pouvez également ajouter un module personnalisé Security Health Analytics pour détecter si les ensembles de données Vertex AI sont chiffrés:

        - 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
      

      Autre exemple, pour Security Command Center Enterprise, ajoutez un détecteur d'analyse de l'état de la sécurité spécifique à AWS (version preview):

      - 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 vous ajoutez un détecteur spécifique à AWS, vous devez déployer la stratégie au niveau de l'organisation.

  4. Importez votre fichier de stratégie dans un dépôt source avec contrôle des versions afin de pouvoir suivre les modifications que vous y apportez au fil du temps.

Créer une stratégie

Effectuez cette tâche pour créer dans Security Command Center une ressource de stratégie que vous pouvez déployer. Si vous avez créé une stratégie à partir d'un modèle de stratégie prédéfini à l'aide de la console Google Cloud, la ressource de stratégie est créée automatiquement.

gcloud

  1. Exécutez la commande gcloud scc postures create pour créer une stratégie à l'aide du fichier posture.yaml.

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

    Remplacez les valeurs suivantes :

    • POSTURE_NAME est le nom de ressource relatif de la position. Exemple : organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

      • LOCATION est global.

      • POSTURE_ID est un nom alphanumérique propre à votre organisation. POSTURE_ID est limité à 63 caractères.

    • POSTURE_FROM_FILE est le chemin relatif ou absolu du fichier posture.yaml.

    Par exemple, pour créer une stratégie avec l'ID posture-example-1 sous l'organisation organizations/3589215982, exécutez la commande suivante:

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

    Si le processus de création de la stratégie échoue, supprimez la stratégie, corrigez l'erreur et réessayez.

  2. Pour vérifier que la stratégie a bien été créée, consultez la section Afficher une position.

Pour appliquer cette stratégie à votre environnement, vous devez déployer la position.

Terraform

Si vous avez créé une configuration Terraform pour la ressource de stratégie, vous devez la provisionner à l'aide de votre pipeline "Infrastructure as Code".

Pour en savoir plus, consultez Terraform sur Google Cloud.

Déployer une stratégie

Après avoir créé une stratégie, déployez-la dans un projet, un dossier ou une organisation. Vous pouvez ainsi appliquer les règles et leurs définitions à des ressources spécifiques de votre organisation et surveiller les dérives. Vous ne pouvez déployer qu'une seule stratégie par projet, dossier ou organisation.

Vérifiez que votre position est ACTIVE.

Lorsque vous déployez la stratégie, les actions suivantes se produisent:

  • Les définitions des règles d'administration et des détecteurs Security Health Analytics sont appliquées.

  • La contrainte personnalisée pour les règles d'administration personnalisées est créée avec l'ID de contrainte afin d'inclure l'ID de révision de stratégie en tant que suffixe de l'ID de contrainte que vous avez défini dans la stratégie.

  • L'état par défaut des modules personnalisés est défini sur Activé.

Console

  1. Dans la console Google Cloud, accédez à la page Gestion des stratégies.

    Accéder à la page "Gestion de la stratégie"

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans l'onglet Posture (Stratégie), cliquez sur la stratégie que vous souhaitez déployer.

  4. Sur la page Détails de la stratégie, sélectionnez la révision de la stratégie que vous souhaitez déployer.

  5. Cliquez sur Déployer sur le nœud.

  6. Sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez déployer la position. Si votre stratégie inclut un détecteur spécifique à AWS, vous devez déployer la stratégie au niveau de l'organisation (Preview).

  7. Cliquez sur Sélectionner.

  8. Répétez les étapes 5 à 7 pour chaque organisation, dossier ou projet auquel vous souhaitez appliquer la stratégie.

gcloud

Exécutez la commande gcloud scc posture-deployments create pour déployer une stratégie au niveau d'un projet, d'un dossier ou d'une organisation.

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

Remplacez les valeurs suivantes :

  • POSTURE_DEPLOYMENT_NAME est le nom de ressource relatif du déploiement de position. Le format est organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

    • LOCATION est global.

    • POSTURE_DEPLOYMENT_ID est un nom unique pour le déploiement de la stratégie. POSTURE_DEPLOYMENT_ID est limité à 63 caractères.

  • --posture-name=POSTURE_NAME est le nom de l'intégration que vous déployez. Le format est organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

    • LOCATION est global.

    • POSTURE_ID est un nom alphanumérique propre à votre organisation.

  • --posture-revision-id=POSTURE_REVISION_ID est la révision de position que vous souhaitez déployer. Vous pouvez l'obtenir à partir de la réponse que vous recevez lorsque vous créez la stratégie ou que vous affichez la stratégie.

  • --target-resource=TARGET_RESOURCE est le nom de l'organisation, du dossier ou du projet sur lequel vous souhaitez déployer la stratégie. Vous pouvez utiliser l'un des formats suivants:

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

    Si votre stratégie inclut un détecteur spécifique à AWS, vous devez déployer la stratégie au niveau de l'organisation (Preview).

Par exemple, pour déployer une stratégie, exécutez la commande suivante:

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

Vous pouvez afficher les informations d'état au fur et à mesure de l'exécution de la commande. Si le processus de création du déploiement de la stratégie échoue, supprimez le déploiement, corrigez l'erreur et réessayez.

Terraform

Vous pouvez créer une ressource Terraform pour déployer une stratégie.

  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>"
  }

Pour en savoir plus, consultez google_securityposture_posture_deployment.

Après avoir créé la ressource Terraform, provisionnez-la à l'aide de votre pipeline "Infrastructure as Code".

Afficher les informations sur le déploiement de la stratégie et de la stratégie

Vous pouvez afficher des informations sur la stratégie et le déploiement de stratégie, par exemple:

  • Les stratégies déployées et leur emplacement dans la hiérarchie des ressources (organisations, projets et dossiers)

  • Révisions et état des stratégies

  • Détails opérationnels d'un déploiement de stratégie

Afficher une stratégie

Vous pouvez afficher des informations sur une stratégie (telles que son état et sa définition de règle).

Console

  1. Dans la console Google Cloud, accédez à la page Gestion des stratégies.

    Accéder à la page "Gestion de la stratégie"

  2. Sélectionnez l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans l'onglet Postures (Postures), cliquez sur la posture que vous souhaitez afficher. Les détails de la posture s'affichent.

gcloud

Exécutez la commande gcloud scc postures describe pour afficher une stratégie que vous avez créée.

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

Remplacez les valeurs suivantes :

  • POSTURE_NAME est le nom de ressource relatif de la position. Exemple : organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

    • LOCATION est global.

    • POSTURE_ID est un nom alphanumérique propre à votre organisation, qui correspond à votre stratégie.

  • revision-id=REVISION_ID est un indicateur facultatif qui spécifie la version de la stratégie à afficher. Si vous n'incluez pas l'indicateur, la dernière version est renvoyée.

Par exemple, pour afficher une stratégie portant le nom organizations/3589215982/locations/global/postures/posture-example-1 et l'ID de révision abcdefgh, exécutez la commande suivante:

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

Afficher les informations sur une opération de déploiement de stratégie

Exécutez la commande gcloud scc posture-operations describe pour afficher les détails d'une opération de déploiement de stratégie.

gcloud scc posture-operations describe OPERATION_NAME

OPERATION_NAME est le nom de ressource relatif de l'opération. Le format est organizations/ORGANIZATION_ID/LOCATION/global/operations/OPERATION_ID. LOCATION est l'emplacement dans lequel vous avez déployé le déploiement de la stratégie. Vous pouvez obtenir l'OPERATION_ID à l'aide de l'argument --async lorsque vous exécutez la commande de stratégie.

Par exemple, pour afficher une opération d'analyse nommée organizations/3589215982/locations/global/operations/operation-1694515698847-605272e4bcd7c-f93dade6-067467ae, exécutez la commande suivante:

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

Afficher les informations sur le déploiement d'une stratégie

Vous pouvez voir où une stratégie est déployée, ainsi que l'état du déploiement.

Console

  1. Dans la console Google Cloud, accédez à la page Gestion des stratégies.

    Accéder à la page "Gestion de la stratégie"

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans l'onglet Postures (Postures), cliquez sur la stratégie que vous avez déployée.

  4. Cliquez sur l'onglet Deployments (Déploiements). Vous pouvez afficher les projets, les dossiers et l'organisation dans lesquels la stratégie est déployée, ainsi que l'état du déploiement.

gcloud

Exécutez la commande gcloud scc posture-deployments describe pour afficher des informations sur une stratégie déployée.

gcloud scc posture-deployments describe
POSTURE_DEPLOYMENT_NAME

POSTURE_DEPLOYMENT_NAME est le nom de ressource relatif du déploiement de position. Le format est organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION est global.

  • POSTURE_DEPLOYMENT_ID est un nom unique pour le déploiement de la stratégie.

Par exemple, pour afficher les détails d'un déploiement de stratégie nommé organizations/3589215982/locations/global/postureDeployments/Posture-deployment-example-1, exécutez la commande suivante:

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

Mettre à jour un déploiement de stratégie et de stratégie

Vous pouvez mettre à jour les éléments suivants:

  • État de la stratégie.

  • Définitions des règles d'une stratégie.

  • Organisation, dossiers ou projets dans lesquels une stratégie est déployée.

Mettre à jour les définitions de règles d'une stratégie

Vous devrez peut-être mettre à jour une stratégie lorsque vous activez davantage de services Google Cloud, déployez des ressources supplémentaires ou exigez des règles supplémentaires pour répondre à des exigences de conformité nouvelles ou changeantes. Si vous mettez à jour une révision de stratégie déployée, cette tâche crée une révision de stratégie. Sinon, la révision de stratégie que vous spécifiez lorsque vous exécutez la commande de mise à jour est mise à jour.

  1. Ouvrez un fichier YAML dans un éditeur de texte. Ajoutez les champs que vous souhaitez mettre à jour, ainsi que leurs valeurs. Si vous mettez à jour des ensembles de règles, assurez-vous que votre fichier inclut tous les ensembles de règles que vous souhaitez inclure dans la stratégie, y compris ceux qui existent déjà. Pour obtenir des instructions, consultez Modifier un fichier YAML de stratégie.

  2. Exécutez la commande gcloud scc postures update pour mettre à jour la stratégie.

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

    Remplacez les valeurs suivantes :

    • POSTURE_NAME est le nom de ressource relatif de la position. Exemple : organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID.

      • LOCATION est global.

      • POSTURE_ID est un nom alphanumérique propre à votre organisation, qui correspond à votre stratégie.

    • POSTURE_FROM_FILE est le chemin relatif ou absolu du fichier posture.yaml qui inclut vos modifications.

    • --revision-id=REVISION_ID est la révision de position que vous souhaitez déployer. Si la stratégie est actuellement déployée, le service de stratégie de sécurité crée automatiquement une nouvelle version de la posture avec un ID de révision différent et inclut cet ID dans le résultat.

    • --update-mask=UPDATE_MASK est la liste des champs que vous souhaitez mettre à jour, au format séparé par des virgules. Cet argument est facultatif. Vous pouvez définir UPDATE_MASK sur l'une des valeurs suivantes:

      • * ou non spécifié: appliquez les modifications que vous avez apportées aux ensembles de règles et à la description de la stratégie.
      • policy_sets: appliquer uniquement les modifications que vous avez apportées aux ensembles de règles.
      • description: appliquez uniquement les modifications que vous avez apportées à la description de la stratégie.
      • policy_sets, description: appliquez les modifications que vous avez apportées aux ensembles de règles et à la description de la stratégie.
      • state: appliquer uniquement le changement d'état.

    Par exemple, pour mettre à jour une stratégie portant le nom posture-example-1 sous l'organisation organizations/3589215982/locations/global et l'ID de révision défini sur abcd1234, exécutez la commande suivante:

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

    Si le processus de mise à jour de la stratégie échoue, corrigez l'erreur, puis réessayez.

  3. Pour vérifier que la stratégie a bien été mise à jour, consultez la section Visualiser une position.

Modifier l'état d'une stratégie

L'état d'une stratégie détermine si elle peut être déployée dans un projet, un dossier ou une organisation.

Une stratégie peut présenter les états suivants:

  • DRAFT: la révision de stratégie n'est pas prête pour le déploiement. Vous ne pouvez pas déployer une révision de position dont l'état est DRAFT.

  • ACTIVE: la révision de stratégie est disponible pour le déploiement. Vous pouvez changer l'état ACTIVE en DRAFT ou DEPRECATED..

  • DEPRECATED: une révision de stratégie DEPRECATED ne peut pas être déployée sur une ressource. Vous devez supprimer tous les déploiements de stratégie existants de la stratégie avant de pouvoir abandonner une révision de stratégie. Si vous souhaitez redéployer une révision de stratégie que vous avez abandonnée, vous devez définir son état sur ACTIVE.

Pour modifier l'état d'une stratégie, exécutez la commande gcloud scc postures update. Vous ne pouvez pas mettre à jour l'état de la stratégie en même temps que d'autres champs. Pour obtenir des instructions sur l'exécution de la commande gcloud scc postures update, consultez Modifier un fichier YAML de stratégie.

Mettre à jour un déploiement de stratégie

Mettez à jour un déploiement de stratégie sur un projet, un dossier ou une organisation pour déployer une nouvelle stratégie ou une nouvelle révision d'une stratégie.

Si la révision de stratégie que vous mettez à jour inclut une contrainte d'organisation personnalisée qui a été supprimée à l'aide de la console Google Cloud, vous ne pouvez pas mettre à jour le déploiement de la stratégie à l'aide du même ID de stratégie. Le service de règles d'administration empêche la création de contraintes d'organisation personnalisées portant le même nom. À la place, vous devez créer une autre version de la stratégie ou utiliser un autre ID de stratégie.

Console

  1. Dans la console Google Cloud, accédez à la page Gestion des stratégies.

    Accéder à la page "Gestion de la stratégie"

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans l'onglet Postures (Postures), cliquez sur la posture que vous avez modifiée.

  4. Sur la page Détails de la stratégie, sélectionnez la révision de la stratégie que vous avez mise à jour.

  5. Cliquez sur Déployer sur le nœud.

  6. Sélectionnez l'organisation, le dossier ou le projet dans lequel vous souhaitez déployer la position. Si un message indique que le déploiement existe déjà, supprimez-le avant de réessayer. Si votre stratégie inclut un détecteur spécifique à AWS, vous devez déployer la stratégie au niveau de l'organisation (Preview).

  7. Cliquez sur Sélectionner.

gcloud

Exécutez la commande gcloud scc posture-deployments update pour déployer une stratégie.

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

Remplacez les valeurs suivantes :

  • POSTURE_DEPLOYMENT_NAME est le nom de ressource relatif du déploiement de position. Le format est organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

    • LOCATION est global.

    • POSTURE_DEPLOYMENT_ID est un nom unique pour le déploiement de la stratégie.

  • --description=DESCRIPTION est la description facultative de la stratégie déployée.

  • --posture-id=POSTURE_ID est le nom de votre stratégie propre à votre organisation. Il a le format suivant : organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_NAME.

  • --posture-revision-id=POSTURE_REVISION_ID est la révision de position que vous souhaitez déployer. Vous pouvez l'obtenir à partir de la réponse que vous recevez lorsque vous créez la stratégie ou affichez la position.

  • --update-mask=UPDATE_MASK est la liste des champs que vous souhaitez mettre à jour, au format séparé par des virgules. Cet argument est facultatif.

Par exemple, pour mettre à jour un déploiement de stratégie avec les critères suivants:

  • Organisation : organizations/3589215982/locations/global
  • ID de déploiement de la stratégie: postureDeploymentexample
  • ID de stratégie: StagingAIPosture
  • Révision: version2

Exécutez la commande ci-dessous.

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

Vous pouvez afficher les informations d'état au fur et à mesure de l'exécution de la commande. Si le processus de mise à jour du déploiement de la stratégie échoue, supprimez le déploiement, corrigez l'erreur et réessayez.

Surveiller la dérive de la position

Dans la stratégie de sécurité, vous pouvez surveiller les dérives par rapport aux stratégies que vous avez définies lors du déploiement d'une stratégie. Une dérive est une modification d'une stratégie qui se produit en dehors d'une stratégie. Par exemple, une dérive se produit lorsqu'un administrateur modifie une définition de règle dans la console au lieu de mettre à jour le déploiement de la stratégie.

Le service de stratégie de sécurité crée des résultats que vous pouvez afficher dans la console Google Cloud ou gcloud CLI chaque fois qu'une dérive se produit.

Console

Si vous avez créé une stratégie qui s'applique aux charges de travail Vertex AI, vous pouvez surveiller les dérives de deux manières: à partir de la page Résultats et de la page Vue d'ensemble. Pour toutes les autres stratégies, vous pouvez surveiller la dérive à partir de la page Résultats.

Pour surveiller les dérives à partir de la page Résultats:

  1. Dans la console Google Cloud, accédez à la page Résultats.

    Accéder

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans le volet Quick filters (Filtres rapides), sélectionnez le résultat Posture violation (Non-respect de la stratégie). Vous pouvez également saisir le filtre suivant dans l'aperçu de la requête:

    state="ACTIVE" AND NOT mute="MUTED" AND finding_class="POSTURE_VIOLATION"
    
  4. Pour afficher les détails d'un résultat, cliquez dessus.

Pour surveiller les dérives à partir de la page Présentation (charges de travail Vertex AI uniquement):

  1. Dans la console Google Cloud, accédez à la page Présentation.

    Accéder à la page "Présentation"

  2. Vérifiez que vous consultez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Examinez le volet Résultats de la charge de travail d'IA.

    • L'onglet Vulnerabilities (Failles) affiche toutes les failles liées aux modules personnalisés Security Health Analytics qui s'appliquent spécifiquement aux charges de travail Vertex AI.
    • L'onglet Dérive des stratégies indique toute dérive liée aux règles d'administration de Vertex AI que vous avez appliquées à une stratégie.
  4. Pour afficher les détails d'un résultat, cliquez dessus.

gcloud

Pour afficher les résultats de dérive dans la gcloud CLI, exécutez la commande suivante:

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

ORGANIZATION_ID est l'ID de l'organisation.

Pour savoir comment traiter ces résultats, consultez la section Résultats du service de stratégie de sécurité. Vous pouvez exporter ces résultats de la même manière que vous exportez tout autre résultat depuis Security Command Center. Pour en savoir plus, consultez les pages Options d'intégration et Exporter des données Security Command Center.

Pour désactiver un résultat de dérive, vous pouvez mettre à jour le déploiement de stratégie avec le même ID de stratégie et la même révision de stratégie.

Générer un résultat de dérive à des fins de test

Après avoir déployé une stratégie, vous pouvez surveiller les dérives par rapport à vos stratégies. Pour voir les résultats de dérive en action dans un environnement de test, procédez comme suit:

  1. Dans la console, accédez à la page Règle d'administration.

    Accéder à la page "Règle d'administration"

  2. Modifiez l'une des stratégies que vous avez définies dans la stratégie déployée. Par exemple, si vous utilisez une stratégie d'IA sécurisée prédéfinie, vous pouvez modifier la règle Restreindre l'accès des adresses IP publiques sur les nouveaux notebooks et instances Vertex AI Workbench.

  3. Après avoir modifié la règle, cliquez sur Définir une stratégie.

  4. Accéder à la page Résultats

    Accéder

  5. Dans la section Nom à afficher source du volet Filtres rapides, sélectionnez Stratégie de sécurité. Un résultat lié à votre modification devrait apparaître dans les cinq minutes.

  6. Pour afficher les détails du résultat, cliquez dessus.

Supprimer un déploiement de stratégie

Vous pouvez supprimer un déploiement de stratégie s'il n'a pas été déployé correctement, si vous n'avez plus besoin d'une stratégie particulière, ou si vous ne souhaitez plus qu'une stratégie particulière soit attribuée à un projet, un dossier ou une organisation. Pour que vous puissiez supprimer un déploiement de stratégie, l'un des états suivants doit être attribué à celui-ci:

  • ACTIVE
  • CREATE_FAILED
  • UPDATE_FAILED
  • DELETE_FAILED

Pour vérifier l'état d'un déploiement de stratégie, consultez Afficher les informations sur le déploiement d'une stratégie.

Lorsque vous supprimez un déploiement de stratégie, vous retirez la stratégie de la ressource (organisation, dossier ou projet) à laquelle vous l'avez attribuée.

Voici le résultat des différents types de règles:

  • Lorsque vous supprimez un déploiement de stratégie qui inclut des règles d'administration personnalisées, ces règles sont supprimées. Cependant, la contrainte personnalisée persiste.

  • Lorsque vous supprimez un déploiement de stratégie qui inclut des détecteurs Security Health Analytics intégrés, l'état final des modules Security Health Analytics dépend de l'organisation, du dossier ou du projet dans lequel a été créé le déploiement.

    • Si vous avez déployé une stratégie sur un dossier ou un projet, les détecteurs Security Health Analytics intégrés héritent de leur état de l'organisation ou du dossier parent.
    • Si vous avez déployé une stratégie au niveau de l'organisation, les détecteurs Security Health Analytics intégrés reviennent à l'état par défaut. Pour obtenir une description des états par défaut, consultez la section Activer et désactiver les détecteurs.

Exécutez la commande gcloud scc posture-deployments delete pour supprimer un déploiement de stratégie.

gcloud scc posture-deployments delete
POSTURE_DEPLOYMENT_NAME

POSTURE_DEPLOYMENT_NAME est le nom de ressource relatif pour le déploiement de la stratégie. Le format est organizations/ORGANIZATION_ID/locations/LOCATION/postureDeployments/POSTURE_DEPLOYMENT_ID.

  • LOCATION est global.

  • POSTURE_DEPLOYMENT_ID est le nom unique du déploiement de la stratégie.

Par exemple, pour supprimer un déploiement de stratégie nommé organizations/3589215982/locations/global/postureDeployments/posture-deployment-example-1, exécutez la commande suivante:

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

Supprimer une stratégie

Lorsque vous supprimez une stratégie, vous supprimez également toutes les révisions. Vous ne pouvez pas supprimer une position déployée. Vous devez supprimer le déploiement de stratégie pour pouvoir terminer cette tâche.

Exécutez la commande gcloud scc postures delete pour supprimer une stratégie.

gcloud scc postures delete POSTURE_NAME

POSTURE_NAME est le nom de ressource relatif de la stratégie. Par exemple, organizations/ORGANIZATION_ID/locations/LOCATION/postures/POSTURE_ID. L'ID de stratégie est un nom alphanumérique propre à votre organisation. LOCATION est global.

Par exemple, pour supprimer une stratégie nommée organizations/3589215982/locations/global/postures/posture-example-1, exécutez la commande suivante:

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

Étapes suivantes