Accéder à Security Command Center à l'aide d'un SDK

Créez un compte de service et configurez-le pour l'utiliser avec les bibliothèques clientes de Security Command Center.

Avant de commencer

Pour suivre ce guide, vous aurez besoin des éléments suivants :

  • Rôle IAM d'administrateur de compte de service. Pour en savoir plus sur les rôles IAM de Security Command Center, consultez la page Contrôle des accès.
  • Un chemin d'accès au répertoire existant dans lequel une clé privée de compte de service peut être stockée. Ce chemin d'accès se trouve dans le contexte de votre environnement Cloud Shell, tel que /home/myuser/mykeys/.
  • Niveau d'activation de Security Command Center: niveau projet ou organisation. Selon votre niveau d'activation, certaines des commandes que vous utilisez pour configurer l'accès au SDK sont différentes. Pour vérifier votre niveau d'activation, consultez Vérifier le niveau d'activation de Security Command Center.

Accéder à Security Command Center

Pour accéder à Security Command Center de manière programmatique, utilisez Cloud Shell pour obtenir la bibliothèque cliente et authentifier un compte de service.

Configurer les variables d'environnement

  1. Accédez à Google Cloud Console.
    Accéder à Google Cloud Console
  2. Cliquez sur Activer Cloud Shell.
  3. Définissez les variables d'environnement en exécutant la commande suivante :

    1. Définissez le nom de votre organisation :

      export ORG_ID=ORGANIZATION_ID
      

      Remplacez ORGANIZATION_ID par l'ID de votre organisation.

    2. Définissez l'ID du projet :

      export PROJECT_ID=CLOUD_SCC_ENABLED_PROJECT_ID
      

      Remplacez CLOUD_SCC_ENABLED_PROJECT_ID par l'ID d'un projet dans lequel Security Command Center est actif au niveau du projet ou pour lequel les analyses sont activées.

    3. Définissez l'ID personnalisé que vous souhaitez utiliser pour le nouveau compte de service ; par exemple, scc-sa. Le nom du compte de service doit comporter entre 6 et 30 caractères, commencer par une lettre, et ne se composer que de caractères alphanumériques et de tirets :

      export SERVICE_ACCOUNT=CUSTOM_ID
      

      Remplacez CUSTOM_ID par l'ID de votre choix.

    4. Définissez le chemin d'accès à la clé du compte de service, par exemple export KEY_LOCATION=/home/$USER/mykeys/$SERVICE_ACCOUNT.json :

      export KEY_LOCATION=FULL_PATH
      # This is used by client libraries to find the key
      export GOOGLE_APPLICATION_CREDENTIALS=$KEY_LOCATION
      

Configurer un compte de service

Pour accéder à Security Command Center par programmation, vous devez disposer d'une clé privée d'un compte de service à utiliser par le client.

Vous devez également attribuer le rôle IAM securitycenter.admin au compte de service. Selon le niveau d'accès requis par le compte de service, vous pouvez attribuer le rôle au niveau du projet, du dossier ou de l'organisation.

  1. Créez un compte de service associé à votre ID de projet :

    gcloud iam service-accounts create $SERVICE_ACCOUNT  \
    --display-name "Service Account for USER"  \
    --project $PROJECT_ID
    

    Remplacez USER par le nom de la personne ou de l'entité qui utilisera le compte de service.

  2. Créez une clé à associer au compte de service. La clé est utilisée pendant toute la durée de vie du compte de service et stockée de manière persistante dans le chemin d'accès que vous attribuez à KEY_LOCATION.

    gcloud iam service-accounts keys create $KEY_LOCATION  \
    --iam-account $SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com
    
  3. Attribuez au compte de service le rôle securitycenter.admin pour l'organisation ou le projet, en fonction du niveau d'activation de Security Command Center.

    • Pour les activations au niveau de l'organisation:

      gcloud organizations add-iam-policy-binding $ORG_ID \
      --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \
      --role='roles/securitycenter.admin'
      
    • Pour les activations au niveau du projet:

      gcloud projects add-iam-policy-binding $PROJECT_ID \
      --member="serviceAccount:$SERVICE_ACCOUNT@$PROJECT_ID.iam.gserviceaccount.com" \
      --role='roles/securitycenter.admin'
      

Installer des bibliothèques clientes pour Security Command Center

Python

Pour inclure la bibliothèque Python Security Command Center en tant que dépendance dans votre projet, procédez comme suit :

  1. Facultatif : avant d'installer la bibliothèque Python, nous vous recommandons d'utiliser Virtualenv pour créer un environnement Python isolé.

    virtualenv onboarding_example
    source onboarding_example/bin/activate
    
  2. Installez pip pour gérer l'installation de la bibliothèque Python.

  3. Exécutez les commandes suivantes pour installer la bibliothèque Python :

    pip install google-cloud-securitycenter
    

Java

Pour inclure la bibliothèque Java de Security Command Center en tant que dépendance dans votre projet, sélectionnez un artefact dans le dépôt Maven.

Go

Pour télécharger la bibliothèque Go, exécutez la commande suivante :

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

Node.js

Pour installer la bibliothèque Node.js, exécutez la commande suivante :

npm install --save @google-cloud/security-center

Étapes suivantes

Utiliser le SDK

Consultez les guides de toutes les fonctionnalités compatibles avec Security Command Center :

Références du SDK

Consultez les références complètes du SDK :