Exécuter un audit de conformité dans Google Cloud

Effectuez un audit pour collecter les preuves dont vous avez besoin pour évaluer votre organisationGoogle Cloud par rapport aux frameworks de conformité.

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 au projet ou au dossier que vous avez enregistré précédemment.

Avant de commencer

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

    • Administrateur Audit Manager (roles/auditmanager.admin)
    • Auditeur Audit Manager (roles/auditmanager.auditor)
  • Si vous souhaitez exécuter un audit par rapport à un framework de conformité personnalisé (aperçu), assurez-vous de disposer du rôle IAM Lecteur de framework de conformité personnalisé Audit Manager (roles/auditmanager.ccfViewer).

  • Assurez-vous que votre projet ou dossier est inscrit pour 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 la ressource et la réglementation, procédez comme suit :

    1. Sélectionnez le projet ou le dossier à auditer.

    2. Sélectionnez le framework de conformité par rapport auquel vous souhaitez auditer votre ressource. Vous pouvez sélectionner un framework de conformité intégré ou personnalisé (aperçu) dans la liste Frameworks disponibles. Pour en savoir plus, consultez la section Cadres de conformité 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. 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 de conformité que vous avez sélectionné. Pour télécharger le fichier, cliquez sur le lien, puis sur Suivant.

  4. 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.

  5. Pour lancer l'audit, cliquez sur Exécuter l'audit.

    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 (projet ou dossier). Exemple : folder.
  • RESOURCE_ID : ID de ressource du projet ou du dossier. 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.
  • COMPLIANCE_TYPE : framework de conformité à auditer.
    • Pour un framework de conformité intégré, spécifiez le nom du framework à auditer. Exemple : CIS_CONTROLS_V8.
    • Pour un framework de conformité personnalisé (aperçu), spécifiez le nom du framework au format suivant :
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • Remplacez les éléments suivants :
      • ORG_ID : ID de l'organisation
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID : ID du framework de conformité personnalisé
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : 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=COMPLIANCE_TYPE \
    --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=COMPLIANCE_TYPE `
    --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=COMPLIANCE_TYPE ^
    --report-format=AUDIT_REPORT_FORMAT ^
    --output-directory=OUTPUT_DIRECTORY ^
    --output-file-name=OUTPUT_FILENAME

Exécuter un audit

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 (projet ou dossier). Exemple : folder.
  • RESOURCE_ID : ID de ressource du projet ou du dossier. 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.
  • COMPLIANCE_TYPE : framework de conformité à auditer.
    • Pour un framework de conformité intégré, spécifiez le nom du framework à auditer. Exemple : CIS_CONTROLS_V8.
    • Pour un framework de conformité personnalisé (aperçu), spécifiez le nom du framework au format suivant :
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • Remplacez les éléments suivants :
      • ORG_ID : ID de l'organisation
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID : ID du framework de conformité personnalisé
  • 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é : 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=COMPLIANCE_TYPE \
    --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=COMPLIANCE_TYPE `
    --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=COMPLIANCE_TYPE ^
    --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 (projet ou dossier). Exemple : folder.
  • RESOURCE_ID : ID de ressource du projet ou du dossier. 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.
  • COMPLIANCE_TYPE : framework de conformité à auditer.
    • Pour un framework de conformité intégré, spécifiez le nom du framework à auditer. Exemple : CIS_CONTROLS_V8.
    • Pour un framework de conformité personnalisé (aperçu), spécifiez le nom du framework au format suivant :
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • Remplacez les éléments suivants :
      • ORG_ID : ID de l'organisation
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID : ID du framework de conformité personnalisé
  • AUDIT_REPORT_FORMAT : format du rapport d'audit de sortie. Seul le format ODF est accepté : 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.

Méthode HTTP et URL :

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

Corps JSON de la requête :


{
  "compliance_framework" : "COMPLIANCE_TYPE"
  "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/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/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"
}

Exécuter un audit

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

  • RESOURCE_TYPE : type de ressource (projet ou dossier). Exemple : folder.
  • RESOURCE_ID : ID de ressource du projet ou du dossier. 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.
  • COMPLIANCE_TYPE : framework de conformité à auditer.
    • Pour un framework de conformité intégré, spécifiez le nom du framework à auditer. Exemple : CIS_CONTROLS_V8.
    • Pour un framework de conformité personnalisé (aperçu), spécifiez le nom du framework au format suivant :
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • Remplacez les éléments suivants :
      • ORG_ID : ID de l'organisation
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID : ID du framework de conformité personnalisé
  • 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é : odf.

Méthode HTTP et URL :

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

Corps JSON de la requête :


{
  "destination" : {
    "gcs_uri" : "BUCKET_URI"
  },
  "compliance_framework" : "COMPLIANCE_TYPE"
  "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/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/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 indiquant que le processus a été déclenché. Ce paramètre est défini sur true une fois l'évaluation de l'audit terminée.

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

Étapes suivantes