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 règles, 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 la dérive et l'affiner au fil du temps.

Avant de commencer

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

Activer le niveau Premium ou Enterprise de Security Command Center

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

Si vous souhaitez utiliser les détecteurs Security Health Analytics en tant que règles, sélectionnez le service Security Health Analytics lors du 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 liés à la stratégie de sécurité et les autorisations associées à 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 le service de règles d'administration et les API 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 intégrés de Security Health Analytics spécifiques à 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 procéder comme suit:

  • 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 consiste en un ou 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 posture, effectuez l'une des opérations suivantes:

Les positions 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 de la stratégie.

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

  2. Vérifiez que vous voyez 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 Détails de la stratégie s'ouvre.

  6. Effectuez l'une des actions suivantes :

gcloud

  1. Examinez les modèles de stratégie prédéfinis pour déterminer ceux qui s'appliquent à votre environnement. Vous pouvez appliquer certaines d'entre elles sans apporter de modifications, tandis que d'autres nécessitent de 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 posture 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 position. Le seul emplacement accepté est global.

    • POSTURE_TEMPLATE est le nom de modèle de la position prédéfinie, comme décrit dans les modèles de position 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 "IA sécurisée", "Essentials" 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 position sans apporter de modifications (par exemple, si vous avez utilisé l'un des modèles _essentials), vous pouvez la créer. Pour obtenir des instructions, consultez Créer une stratégie.

    • Si vous devez modifier 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 règles d'un environnement existant

Vous pouvez extraire les règles (y compris les règles d'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 existant pour créer un fichier de stratégie. Vous ne pouvez pas extraire de règles d'une organisation, d'un dossier ou d'un projet auxquels 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 règles des dossiers ou de l'organisation parents.

Si vous avez connecté Security Command Center Enterprise à AWS, cette commande extrait également les détecteurs spécifiques à 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 de 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 entreprise. 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 les règles du dossier 3589215982 de l'organisation 6589215984, exécutez la commande suivante:

    gcloud scc postures extract organizations/6589215984/locations/global/postures/myStagingPosture 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 position sans apporter de modification (par exemple, si vous avez utilisé l'un des modèles _essentials), vous pouvez la créer. Pour obtenir des instructions, consultez Créer une stratégie.

    • Si vous devez modifier des ensembles de stratégies ou des stratégies, consultez la section Modifier un fichier YAML de stratégie.

Créer une ressource Terraform avec des définitions de stratégie

Vous pouvez créer une configuration Terraform pour générer 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 des stratégies pour les détecteurs intégrés d'analyse de l'état de la sécurité et spécifiques à AWS est 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 le fichier YAML de votre stratégie dans un éditeur de texte.

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

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

    Consultez la section Fichier YAML de la stratégie de sécurité pour obtenir une description de ces clés-valeurs.

    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 règles nécessitant 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 position prédéfinie étendue de l'IA sécurisée, 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 supplémentaires pour les règles d'administration, 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 disques. Si vous copiez cet exemple, veillez à remplacer allowed_values par une liste de projets adapté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 d'autres détecteurs de Security Health Analytics, tels que ceux documentés dans les résultats de Security Health Analytics. 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
      

      Autre exemple, ajoutez un module personnalisé d'analyse de l'état de sécurité 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 Security Health Analytics spécifique à AWS (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 position

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 pour vous.

gcloud

  1. Exécutez la commande gcloud scc postures create pour créer une position à 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 d'une stratégie échoue, supprimez la stratégie, corrigez l'erreur, puis réessayez.

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

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

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 la page Terraform sur Google Cloud.

Déployer une stratégie

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

Vérifiez que l'état de 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 pour inclure l'ID de révision de la 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 Enabled (Activé).

Console

  1. Dans la console Google Cloud, accédez à la page Gestion de la stratégie.

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

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

  3. Dans l'onglet Posture (Position), cliquez sur la position 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 la déployer 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 sur un projet, un dossier ou 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 pour le déploiement de la posture. 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 la posture 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 posture 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 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 la déployer 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 une fois la commande terminée. Si le processus de création d'un déploiement de stratégie échoue, supprimez le déploiement, corrigez l'erreur, puis 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 d'infrastructure en tant que code.

Afficher les informations de déploiement de stratégie et de stratégie

Vous pouvez afficher des informations sur la stratégie et le déploiement de stratégie pour consulter des informations telles que les suivantes:

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

  • Révisions et état des positions

  • 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 ses définitions de règle).

Console

  1. Dans la console Google Cloud, accédez à la page Gestion de la stratégie.

    Accéder à "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, cliquez sur la position que vous souhaitez afficher. Les détails de la position s'affichent.

gcloud

Exécutez la commande gcloud scc postures describe pour afficher la position 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 pour votre stratégie, propre à votre organisation.

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

Par exemple, pour afficher une position 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 securityposture-operations describe pour afficher les détails de l'opération de déploiement d'une stratégie.

gcloud scc securityposture-operations describe OPERATION_NAME

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

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

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

Afficher les informations sur un déploiement de 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 de la stratégie.

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

  2. Vérifiez que vous voyez 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 position 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 relatif de la ressource pour le déploiement de la posture. 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 position.

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

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

Mettre à jour les définitions des règles dans une stratégie

Vous devrez peut-être mettre à jour une stratégie lorsque vous activez d'autres 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 nouvelle révision de stratégie. Sinon, la révision de stratégie que vous spécifiez lors de l'exécution de la commande "update" est mise à jour.

  1. Ouvrez un fichier YAML dans un éditeur de texte. Ajoutez les champs à 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 position.

    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 pour votre stratégie, propre à votre organisation.

    • 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 posture 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 stratégie avec un ID de révision différent et inclut cet ID dans la sortie.

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

      • * ou non spécifié: applique les modifications que vous avez apportées aux ensembles de règles et à la description de la stratégie.
      • policy_sets: appliquez uniquement les modifications que vous avez apportées aux ensembles de règles.
      • description: applique uniquement les modifications que vous avez apportées à la description de la position.
      • policy_sets, description: appliquez les modifications que vous avez apportées aux ensembles de règles et à la description de la stratégie.
      • state: applique 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 et réessayez.

  3. Pour vérifier que la position a bien été mise à jour, consultez Afficher une position.

Modifier l'état d'une position

L'état d'une stratégie détermine si elle est disponible pour un déploiement dans un projet, un dossier ou une organisation.

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

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

  • ACTIVE: la révision de la stratégie est disponible pour le déploiement. Vous pouvez remplacer l'état ACTIVE par 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 obsolète, vous devez définir son état sur ACTIVE.

Pour modifier l'état d'une position, exécutez la commande gcloud scc postures update. Vous ne pouvez pas mettre à jour l'état de la position en même temps que d'autres champs. Pour obtenir des instructions sur l'exécution de la commande gcloud scc postures update, consultez la section 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 la 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 nouvelle 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 de la stratégie.

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

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

  3. Dans l'onglet Postures, cliquez sur la position 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 la déployer 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 pour le déploiement de la posture. 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 position 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 posture que vous souhaitez déployer. Vous pouvez l'obtenir à partir de la réponse que vous recevez lorsque vous créez la position ou affichez la position.

  • --update-mask=UPDATE_MASK est la liste des champs que vous souhaitez mettre à jour, au format séparés par une virgule. 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 une fois la commande terminée. Si le processus de mise à jour du déploiement de stratégie échoue, supprimez le déploiement, corrigez l'erreur, puis réessayez.

Surveiller la dérive de position

Vous pouvez surveiller une éventuelle dérive des stratégies déployées dans la stratégie de sécurité. La dérive est une modification d'une stratégie qui intervient en dehors d'une position. Par exemple, une dérive se produit lorsqu'un administrateur modifie une définition de stratégie 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 la gcloud CLI en cas de dérive.

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 Présentation. Pour toutes les autres positions, vous pouvez surveiller les dérives sur 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 voyez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Dans le volet Filtres rapides, sélectionnez le résultat Non-respect de la stratégie. Vous pouvez également saisir le filtre suivant dans 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 voyez bien l'organisation pour laquelle vous avez activé le niveau Premium ou Enterprise de Security Command Center.

  3. Examinez le volet Résultats des charges de travail d'IA.

    • L'onglet Vulnerabilities (Failles) affiche toutes les failles liées aux modules personnalisés de 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 Vertex AI que vous avez appliquées dans 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 page 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 Options d'intégration et Exporter les 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 écarts 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ègles d'administration.

    Accéder à la règle d'administration

  2. Modifiez l'une des stratégies que vous avez définies dans la stratégie de déploiement. Par exemple, si vous utilisez une stratégie d'IA sécurisée prédéfinie, vous pouvez modifier la règle Limiter 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 la règle.

  4. Accéder à la page Résultats

    Accéder

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

  6. Pour afficher les détails d'un 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 supprimer un déploiement de stratégie, celui-ci doit être dans l'un des états suivants:

  • ACTIVE
  • CREATE_FAILED
  • UPDATE_FAILED
  • DELETE_FAILED

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

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

Le résultat pour différents types de règles est le suivant:

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

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

    • Si vous avez déployé une stratégie sur un dossier ou un projet, les détecteurs intégrés de Security Health Analytics 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 intégrés de Security Health Analytics 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 posture.

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 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 position

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

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

gcloud scc postures delete POSTURE_NAME

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

Par exemple, pour supprimer une position 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