Exécuter un audit de conformité dans Google Cloud

Planifiez et effectuez des audits pour collecter les preuves dont vous avez besoin pour évaluer votre organisationGoogle Cloud par rapport aux frameworks compatibles.

Un audit est une opération de longue durée qui peut prendre quelques heures. La durée dépend du nombre de ressources dans le champ d'application de l'audit, qui correspond à l'organisation (aperçu), au projet ou au dossier que vous avez précédemment enregistrés.

Vous pouvez planifier des audits (Aperçu) pour qu'ils s'exécutent à intervalles réguliers et spécifier une période pour un audit planifié. Vous ne pouvez créer un planning pour un framework et une ressource spécifiques que s'il n'existe pas déjà de planning actif ou en pause pour cette combinaison.

Avant de commencer

  • Assurez-vous de disposer de l'un des rôles IAM suivants :

    • Administrateur Audit Manager (roles/auditmanager.admin)
    • Auditeur du gestionnaire d'audits (roles/auditmanager.auditor)
    • Lecteur Compliance Manager (roles/cloudsecuritycompliance.viewer) (obligatoire si vous auditez un framework que vous avez créé à l'aide de Compliance Manager)
  • Assurez-vous que votre organisation, votre projet ou votre dossier sont inscrits à l'audit.

Exécuter un audit

Console

  1. Dans la console Google Cloud , accédez à la page Exécuter l'évaluation dans Audit Manager.

    Accéder au Gestionnaire d'audit

  2. Dans la section Choisir une ressource et une région, procédez comme suit :

    1. Sélectionnez l'organisation (Aperçu), le dossier ou le projet à auditer.

    2. Sélectionnez le framework par rapport auquel vous souhaitez auditer votre ressource. Pour en savoir plus sur les frameworks compatibles, consultez Frameworks compatibles.

    3. Sélectionnez l'emplacement où l'évaluation de l'audit doit être traitée. Pour obtenir la liste des emplacements acceptés, consultez Emplacements Audit Manager.

    4. Cliquez sur Suivant.

  3. Sélectionnez le framework par rapport auquel vous souhaitez auditer votre ressource, puis cliquez sur Suivant. Pour en savoir plus sur les frameworks compatibles, consultez Frameworks compatibles.

  4. Facultatif : Dans la section Afficher le plan d'évaluation, vous pouvez télécharger un fichier ODS contenant des informations sur le champ d'application de l'audit en fonction du framework que vous avez sélectionné. Pour télécharger le fichier, cliquez sur le lien, puis sur Suivant.

  5. Dans la section Choisir un bucket de stockage, sélectionnez un bucket de stockage dans lequel le rapport d'audit et les preuves doivent être enregistrés, puis cliquez sur OK. Si votre bucket ne figure pas dans la liste, demandez à votre administrateur d'enregistrer votre ressource avec votre bucket de stockage.

  6. (Aperçu) Facultatif : Dans la section Programmation, définissez l'un des éléments suivants :

    • Fréquence de répétition de l'audit (quotidienne, mensuelle, trimestrielle ou annuelle).

    • Période à inclure dans l'audit. Si vous sélectionnez Sans date de fin, l'audit continue de s'exécuter à partir de la date de début que vous spécifiez, jusqu'à ce que vous le arrêtiez manuellement.

  7. Pour lancer l'audit, cliquez sur Exécuter l'audit ou Exécuter l'audit planifié.

    Vous pouvez consulter l'état de l'audit sur la page Afficher les évaluations.

gcloud

Facultatif : générer une évaluation d'audit

Avant d'exécuter un audit, vous pouvez générer une évaluation (ou un champ d'application) qui inclut une répartition détaillée des tâches pour l'audit en fonction du framework de conformité que vous avez choisi.

La commande gcloud audit-manager audit-scopes generate génère un champ d'application d'audit.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource, qui peut être une organisation (aperçu), un dossier ou un projet. Exemple : folders ou projects.
  • RESOURCE_ID : ID de ressource de l'organisation (aperçu), du projet ou du dossier. Par exemple : 8767234.
  • LOCATION : emplacement du point de terminaison de l'API Audit Manager. Pour obtenir la liste des points de terminaison disponibles, consultez Emplacements Audit Manager. Par exemple : us-central1.
  • FRAMEWORK : ID du framework à auditer. Exemple : builtin-cis-v8. Pour trouver l'ID d'un framework, consultez la page Afficher les évaluations dans Audit Manager.
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : AUDIT_REPORT_FORMAT_ODF.
  • OUTPUT_DIRECTORY : répertoire dans lequel la sortie doit être stockée. Exemple : reports.
  • OUTPUT_FILENAME : nom du fichier de sortie. N'incluez pas l'extension de fichier dans le nom de fichier. Par exemple :scopeReport.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

gcloud audit-manager audit-scopes generate \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=LOCATION \
    --compliance-framework=FRAMEWORK \
    --report-format=AUDIT_REPORT_FORMAT \
    --output-directory=OUTPUT_DIRECTORY \
    --output-file-name=OUTPUT_FILENAME

Windows (PowerShell)

gcloud audit-manager audit-scopes generate `
    --RESOURCE_TYPE=RESOURCE_ID `
    --location=LOCATION `
    --compliance-framework=FRAMEWORK `
    --report-format=AUDIT_REPORT_FORMAT `
    --output-directory=OUTPUT_DIRECTORY `
    --output-file-name=OUTPUT_FILENAME

Windows (cmd.exe)

gcloud audit-manager audit-scopes generate ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --location=LOCATION ^
    --compliance-framework=FRAMEWORK ^
    --report-format=AUDIT_REPORT_FORMAT ^
    --output-directory=OUTPUT_DIRECTORY ^
    --output-file-name=OUTPUT_FILENAME

Exécuter un audit à la demande

Vous ne pouvez pas planifier d'audit (aperçu) ni exécuter de rapports au niveau de l'organisation (aperçu) à l'aide de gcloud CLI.

La commande gcloud audit-manager audit-reports generate exécute un audit.

Avant d'utiliser les données de la commande ci-dessous, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource, qui peut être une organisation (aperçu), un dossier ou un projet. Exemple : folders ou projects.
  • RESOURCE_ID : ID de ressource de l'organisation (aperçu), du projet ou du dossier. Par exemple : 8767234.
  • LOCATION : emplacement du point de terminaison de l'API Audit Manager. Pour obtenir la liste des points de terminaison disponibles, consultez Emplacements Audit Manager. Par exemple : us-central1.
  • FRAMEWORK : ID du framework à auditer. Exemple : builtin-cis-v8. Pour trouver l'ID d'un framework, consultez la page Afficher les évaluations dans Audit Manager.
  • BUCKET_URI : URI du bucket Cloud Storage. Exemple : gs://testbucketauditmanager
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : AUDIT_REPORT_FORMAT_ODF.

Exécutez la commande suivante :

Linux, macOS ou Cloud Shell

gcloud audit-manager audit-reports generate \
    --RESOURCE_TYPE=RESOURCE_ID \
    --location=LOCATION \
    --compliance-framework=FRAMEWORK \
    --report-format=AUDIT_REPORT_FORMAT \
    --gcs-uri=BUCKET_URI

Windows (PowerShell)

gcloud audit-manager audit-reports generate `
    --RESOURCE_TYPE=RESOURCE_ID `
    --location=LOCATION `
    --compliance-framework=FRAMEWORK `
    --report-format=AUDIT_REPORT_FORMAT `
    --gcs-uri=BUCKET_URI

Windows (cmd.exe)

gcloud audit-manager audit-reports generate ^
    --RESOURCE_TYPE=RESOURCE_ID ^
    --location=LOCATION ^
    --compliance-framework=FRAMEWORK ^
    --report-format=AUDIT_REPORT_FORMAT ^
    --gcs-uri=BUCKET_URI

Vous devriez obtenir un résultat semblable à celui-ci :

done: false
name: projects/10398413/locations/987234/operations/operation-1726842525305-6228ddb4dca96-78a6db59-f9dd9a24

REST

Facultatif : générer une évaluation d'audit

Avant d'exécuter un audit, vous pouvez générer une évaluation (ou un champ d'application) qui inclut une répartition détaillée des tâches pour l'audit en fonction du framework de conformité que vous avez choisi.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource, qui peut être une organisation (aperçu), un dossier ou un projet. Exemple : folders ou projects.
  • RESOURCE_ID : ID de ressource de l'organisation (aperçu), du projet ou du dossier. Par exemple : 8767234.
  • LOCATION : emplacement du point de terminaison de l'API Audit Manager. Pour obtenir la liste des points de terminaison disponibles, consultez Emplacements Audit Manager. Par exemple : us-central1.
  • FRAMEWORK : ID du framework à auditer. Exemple : builtin-cis-v8. Pour trouver l'ID d'un framework, consultez la page Afficher les évaluations dans Audit Manager.
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : AUDIT_REPORT_FORMAT_ODF.

Méthode HTTP et URL :

POST https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate

Corps JSON de la requête :


{
  "compliance_framework" : "FRAMEWORK"
  "report_format" : "AUDIT_REPORT_FORMAT"
}

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate"

PowerShell

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditScopesReport:generate" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :

{

  "scope_report_contents" : "980u43nrf090834uhbkfehf......"
  "name" : "folders/8767234/locations/us-west"
}

La réponse contient les informations suivantes :

    Le champ scope_reports_contents correspond au format octet du contenu, qui doit être converti au format ODF avant d'être examiné.

  • name : chaîne d'identifiant unique de la ressource applicable.

Exécuter un audit à la demande

Vous ne pouvez pas planifier l'exécution d'un audit (aperçu) à l'aide des API REST.

Avant d'utiliser les données de requête, effectuez les remplacements suivants :

  • RESOURCE_TYPE : type de ressource, qui peut être une organisation (aperçu), un dossier ou un projet. Exemple : folders ou projects.
  • RESOURCE_ID : ID de ressource de l'organisation (aperçu), du projet ou du dossier. Par exemple : 8767234.
  • LOCATION : emplacement du point de terminaison de l'API Audit Manager. Pour obtenir la liste des points de terminaison disponibles, consultez Emplacements Audit Manager. Par exemple : us-central1.
  • FRAMEWORK : ID du framework à auditer. Exemple : builtin-cis-v8. Pour trouver l'ID d'un framework, consultez la page Afficher les évaluations dans Audit Manager.
  • BUCKET_URI : URI du bucket Cloud Storage. Exemple : gs://testbucketauditmanager
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : AUDIT_REPORT_FORMAT_ODF.

Méthode HTTP et URL :

POST https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditReport:generate

Corps JSON de la requête :


{
  "destination" : {
    "gcs_uri" : "BUCKET_URI"
  },
  "compliance_framework" : "FRAMEWORK"
  "report_format" : "AUDIT_REPORT_FORMAT"
}

Pour envoyer votre requête, choisissez l'une des options suivantes :

curl

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

curl -X POST \
-H "Authorization: Bearer $(gcloud auth print-access-token)" \
-H "Content-Type: application/json; charset=utf-8" \
-d @request.json \
"https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditReport:generate"

PowerShell

Enregistrez le corps de la requête dans un fichier nommé request.json, puis exécutez la commande suivante :

$cred = gcloud auth print-access-token
$headers = @{ "Authorization" = "Bearer $cred" }

Invoke-WebRequest `
-Method POST `
-Headers $headers `
-ContentType: "application/json; charset=utf-8" `
-InFile request.json `
-Uri "https://auditmanager.googleapis.com/v1/RESOURCE_TYPE/RESOURCE_ID/locations/LOCATION/auditReport:generate" | Select-Object -Expand Content

Vous devriez recevoir une réponse JSON de ce type :

{
  "name": "organizations/834/projects/10398413/locations/987234/operations/098234",
  "done": false
}

La réponse contient les informations suivantes :

  • name : chaîne d'identifiant unique de la demande d'opération d'évaluation d'audit. Cet identifiant permet de suivre la progression du processus d'évaluation de l'audit. Exemple : operation/098234.
  • done : indicateur booléen défini sur false qui indique que le processus a été déclenché. Cette valeur est définie sur true une fois l'évaluation de l'audit terminée.

Mettre à jour les audits planifiés

Vous pouvez suspendre, reprendre et arrêter les audits récurrents. Si vous souhaitez modifier la programmation, vous devez supprimer l'audit programmé existant, puis en créer un autre.

Console

  1. Dans la console Google Cloud , accédez à la page Gestion des audits d'Audit Manager.

    Accéder au Gestionnaire d'audit

  2. Dans l'onglet Programmes, recherchez l'audit programmé que vous souhaitez modifier.

  3. Effectuez l'une des opérations suivantes :

    • Pour suspendre une programmation d'audit, cliquez sur  Suspendre la programmation.

    • Pour redémarrer un audit que vous avez mis en pause, cliquez sur Reprendre la programmation.

    • Pour supprimer un audit planifié, cliquez sur Arrêter la planification.

Étapes suivantes