Migrer vers la version 2 de l'API Security Command Center

Cette page explique les différences entre la version 1 (v1) et la version 2 (v2) de l'API Security Command Center. Il explique également comment migrer vers l'API Security Command Center v2, en combinaison avec l'API Security Command Center Management v1.

À partir du 9 décembre 2024, si vous activez Security Command Center dans une organisation pour la première fois, vous ne devez utiliser que la version 2 de l'API Security Command Center dans cette organisation. Les versions antérieures ne sont pas compatibles.

Si vous avez activé Security Command Center au niveau du projet avant le 9 décembre 2024, tous les projets que vous activez dans la même organisation seront compatibles avec toutes les versions disponibles de l'API Security Command Center.

Pour toutes les intégrations avec Security Command Center, nous vous recommandons d'adopter l'API Security Command Center v2 et l'API Security Command Center Management v1. Nous vous recommandons d'utiliser les bibliothèques clientes Cloud ou le Google Cloud fournisseur Terraform pour appeler ces API. Pour en savoir plus, consultez les ressources suivantes :

Différences entre les API v1 et v2

Lorsque vous passez à l'API Security Command Center v2, tenez compte des différences suivantes avec l'API v1.

Résidence des données

L'API Security Command Center v2 est compatible avec la résidence des données, ce qui vous permet de mieux contrôler l'emplacement de vos données Security Command Center:

Même si vous n'avez pas activé la résidence des données pour votre organisation, nous vous recommandons d'appeler la version tenant compte de l'emplacement de chaque méthode et de spécifier l'emplacement global. Cela facilitera l'adoption de la résidence des données à l'avenir.

Si vous avez activé la résidence des données pour votre organisation, vous devez utiliser les méthodes sensibles à l'emplacement et, le cas échéant, le point de terminaison de service régional pour l'emplacement que vous avez sélectionné.

Pour utiliser la version basée sur la position de chaque méthode, procédez comme suit:

Console

La console Google Cloud utilise la version tenant compte de la position de chaque méthode chaque fois que cela est nécessaire.

gcloud

Lorsque vous exécutez des commandes de la CLI gcloud qui vous permettent de spécifier un emplacement, comme gcloud scc findings list, fournissez toujours un emplacement. Pour ce faire, vous pouvez utiliser différentes méthodes:

  • Utilisez l'option --location.
  • Si vous fournissez le chemin d'accès complet du nom de la ressource, utilisez un format qui spécifie un emplacement, comme projects/123/sources/456/locations/global/findings/a1b2c3.

Terraform

Fournissez toujours l'argument location pour les ressources qui le prennent en charge, comme google_scc_v2_organization_mute_config.

REST

Appelez la version de la méthode dont le nom contient locations. Par exemple, appelez organizations.locations.findings.bulkMute au lieu de organizations.findings.bulkMute.

Bibliothèques clientes

Consultez les exemples de code pour Security Command Center ou la documentation de référence de l'API pour votre bibliothèque cliente.

Configurations de notification et de configuration d'exportation BigQuery

L'API Security Command Center v1 vous permet de créer et de gérer les types de configurations d'exportation suivants:

Vous pouvez également créer et gérer ces configurations d'exportation avec l'API Security Command Center v2. Toutefois, si vous créez une configuration d'exportation avec l'API Security Command Center v1, elle n'est pas visible dans l'API Security Command Center v2. De même, si vous créez une configuration d'exportation avec l'API Security Command Center v2, elle n'est pas visible dans l'API Security Command Center v1.

De plus, les configurations d'exportation que vous créez avec l'API Security Command Center v2 ne peuvent pas utiliser le champ source_properties pour filtrer les résultats. Vous devez utiliser un autre champ à la place.

Console

Dans la console Google Cloud, si une configuration d'exportation a été créée avec l'API Security Command Center v1, elle est associée à l'étiquette Ancienne. Vous pouvez utiliser la console Google Cloud pour gérer ces ressources.

Si vous créez une configuration d'exportation dans la console Google Cloud, elle est toujours créée avec l'API Security Command Center v2.

gcloud

Pour gérer les configurations d'exportation créées avec l'API Security Command Center v1, ne spécifiez pas d'emplacement lorsque vous exécutez des commandes gcloud CLI telles que gcloud scc notifications describe:

  • N'utilisez pas l'option --location.
  • Si vous fournissez le chemin d'accès complet de l'ID de configuration, utilisez un format qui ne spécifie pas d'emplacement, comme organizations/123/notificationConfigs/456. N'utilisez pas un format comme organizations/123/locations/global/notificationConfigs/456.

De même, pour créer ou gérer des configurations d'exportation avec l'API Security Command Center v2, spécifiez un emplacement lorsque vous exécutez la commande gcloud CLI. Lorsque vous créez des configurations, nous vous recommandons d'utiliser l'API Security Command Center v2.

Terraform

Votre fichier de configuration Terraform définit les configurations d'exportation en tant que ressources v1 ou v2. Par exemple, consultez les ressources sur les configurations de notification:

Lorsque vous créez des configurations, nous vous recommandons de créer des ressources v2.

REST

Pour gérer les configurations d'exportation créées avec l'API Security Command Center v1, vous devez utiliser l'API Security Command Center v1.

Lorsque vous créez des configurations, nous vous recommandons d'utiliser l'API Security Command Center v2.

Bibliothèques clientes

Pour gérer les configurations d'exportation créées avec l'API Security Command Center v1, vous devez utiliser les bibliothèques clientes Cloud pour l'API Security Command Center v1.

Lorsque vous créez des configurations, nous vous recommandons d'utiliser l'API Security Command Center v2.

Services intégrés et modules personnalisés

L'API Security Command Center v1 vous permet d'afficher et de mettre à jour les types de ressources suivants:

Pour gérer ces types de ressources, utilisez l'API Security Command Center Management et ses bibliothèques clientes. L'API Security Command Center v2 ne peut pas gérer ces types de ressources.

Si votre organisation a activé Security Command Center avant le 20 juin 2023, vous pouvez utiliser l'API Security Command Center v1 pour afficher des éléments dans une organisation, un dossier ou un projet. Ces fonctionnalités de gestion des composants Security Command Center sont obsolètes et ne sont pas disponibles dans l'API Security Command Center v2. Ces fonctionnalités seront supprimées de l'API Security Command Center v1 à compter du 20 juin 2024.

Vous pouvez plutôt utiliser Cloud Asset Inventory pour afficher vos éléments, y compris leurs marques de sécurité. Pour en savoir plus, consultez Répertorier les composants.

Vous pouvez également utiliser l'API Security Command Center v2 pour mettre à jour les marques de sécurité de vos composants. Les méthodes de l'API Security Command Center qui mettent à jour les marques de sécurité ne sont pas obsolètes.

Mettre à jour les bibliothèques clientes et le fournisseur Terraform

Pour mettre à jour votre code afin d'utiliser l'API Security Command Center v2, procédez comme suit:

Terraform

Installez la version actuelle du fournisseur Terraform pour Google Cloud. Pour en savoir plus, consultez la documentation du fournisseur.

De plus, mettez à jour votre fichier de configuration Terraform pour créer des ressources commençant par le préfixe google_scc_v2_ ou google_scc_management_. N'oubliez pas que les ressources suivantes ne sont pas partagées entre les API v1 et v2:

Si vous appliquez un plan d'exécution Terraform qui remplace ces ressources par leurs équivalents v2, Terraform supprimera les configurations v1 et en créera de nouvelles.

C++

Mettez à jour votre application pour inclure le fichier d'en-tête v2 de la bibliothèque cliente:

#include "google/cloud/securitycenter/v2/security_center_client.h"

De plus, mettez à jour votre application pour qu'elle utilise les classes de l'espace de noms v2:

namespace securitycenter = ::google::cloud::securitycenter_v2;

C#

Installez la bibliothèque cliente v2, puis mettez à jour votre application pour qu'elle l'utilise:

Install-Package Google.Cloud.SecurityCenter.V2

Go

Installez la bibliothèque cliente v2, puis mettez à jour votre application pour qu'elle l'utilise:

go get cloud.google.com/go/securitycenter/apiv2

Java

Installez la version actuelle de la bibliothèque cliente. Pour en savoir plus, consultez la section Installer la bibliothèque cliente.

En outre, mettez à jour votre application pour qu'elle utilise les classes, les interfaces et les énumérations du package com.google.cloud.securitycenter.v2.

Node.js

Installez la version actuelle de la bibliothèque cliente. Pour en savoir plus, consultez la section Installer la bibliothèque cliente.

En outre, mettez à jour votre application pour qu'elle utilise v2.SecurityCenterClient et les classes, interfaces et énumérations de l'espace de noms protos.google.cloud.securitycenter.v2.

PHP

Installez la version actuelle de la bibliothèque cliente. Pour en savoir plus, consultez la section Installer la bibliothèque cliente.

En outre, mettez à jour votre application pour qu'elle utilise les classes et les énumérations de l'espace de noms Google \ Cloud \ SecurityCenter \ V2.

Python

Installez la version actuelle de la bibliothèque cliente. Pour en savoir plus, consultez la section Installer la bibliothèque cliente.

En outre, mettez à jour votre application pour qu'elle utilise les classes du package google.cloud.securitycenter_v2.

Ruby

Installez la version actuelle de la bibliothèque cliente. Pour en savoir plus, consultez la section Installer la bibliothèque cliente.

De plus, mettez à jour votre application pour définir le paramètre version sur :v2 lorsqu'elle crée un objet client.

Si vous devez gérer de manière programmatique les services intégrés de Security Command Center et leurs états d'activation, ou les modules personnalisés pour Event Threat Detection ou Security Health Analytics, vous devez également installer une bibliothèque cliente pour l'API Security Command Center Management et mettre à jour votre application pour qu'elle l'utilise.