Esegui un audit di conformità in Google Cloud

Esegui i controlli per raccogliere le prove necessarie per valutare la tua Google Cloud organizzazione in base ai framework supportati.

Un controllo è un'operazione a lunga esecuzione che potrebbe richiedere alcune ore. La durata dipende dal numero di risorse nell'ambito del controllo, ovvero il progetto o la cartella di cui hai eseguito la registrazione in precedenza.

Prima di iniziare

  • Assicurati di disporre di uno dei seguenti ruoli IAM:

    • Audit Manager Admin (roles/auditmanager.admin)
    • Audit Manager Auditor (roles/auditmanager.auditor)
    • Compliance Manager Viewer (roles/cloudsecuritycompliance.viewer) (obbligatorio se stai eseguendo il controllo di un framework che hai creato utilizzando Compliance Manager)
  • Assicurati che il progetto o la cartella sia stato registrato per il controllo.

Esegui un controllo

Console

  1. Nella Google Cloud console, vai alla pagina Esegui test in Audit Manager.

    Vai ad Audit Manager

  2. Nella sezione Scegli risorsa e regione, procedi nel seguente modo:

    1. Seleziona il progetto o la cartella di cui devi eseguire il controllo.

    2. Seleziona la località in cui deve essere elaborato il test di controllo. Per l'elenco delle località supportate, vedi Località di Audit Manager locations.

    3. Fai clic su Avanti.

  3. Seleziona il framework in base al quale vuoi eseguire il controllo della risorsa e fai clic su Avanti. Per informazioni sui framework supportati, vedi Supported frameworks.

  4. (Facoltativo) Nella sezione Visualizza piano di test, puoi scaricare un file ODS contenente informazioni sull'ambito del controllo in base al framework selezionato. Per scaricare il file, fai clic sul link e poi su Avanti.

  5. Nella sezione Scegli bucket di archiviazione, seleziona un bucket di archiviazione in cui salvare il report di controllo e le prove, quindi fai clic su Fine. Se il bucket non è presente nell'elenco, chiedi all'amministratore di registrare la risorsa con il bucket di archiviazione.

  6. Per avviare il controllo, fai clic su Esegui controllo.

    Puoi visualizzare lo stato del controllo nella pagina Visualizza test.

gcloud

(Facoltativo) Genera un test di controllo

Prima di eseguire un controllo vero e proprio, puoi generare un test di controllo (o ambito) che includa una suddivisione dettagliata delle attività per il controllo in base al framework di conformità scelto.

Il gcloud audit-manager audit-scopes generate comando genera un ambito di controllo.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa, un progetto o una cartella. Ad esempio: folders o projects.
  • RESOURCE_ID: l'ID risorsa del progetto o della cartella. Ad esempio: 8767234.
  • LOCATION: la località dell'endpoint dell'API Audit Manager. Per un elenco degli endpoint disponibili, vedi Località di Audit Manager. Ad esempio: us-central1.
  • FRAMEWORK: l'ID del framework in base al quale eseguire il controllo. Ad esempio: builtin-cis-v8. Per trovare l'ID di un framework, consulta la pagina Visualizza test in Audit Manager.
  • AUDIT_REPORT_FORMAT: il formato del report di controllo di output. È supportato solo il formato ODF: AUDIT_REPORT_FORMAT_ODF.
  • OUTPUT_DIRECTORY: la directory in cui devono essere archiviati gli output. Ad esempio: reports.
  • OUTPUT_FILENAME: il nome del file di output. Non includere l'estensione del file nel nome del file. Ad esempio:scopeReport.

Esegui il comando seguente:

Linux, macOS o 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

Esegui un controllo on demand

Il gcloud audit-manager audit-reports generate comando esegue un controllo.

Prima di utilizzare i dati dei comandi riportati di seguito, effettua le seguenti sostituzioni:

  • RESOURCE_TYPE: il tipo di risorsa, un progetto o una cartella. Ad esempio: folders o projects.
  • RESOURCE_ID: l'ID risorsa del progetto o della cartella. Ad esempio: 8767234.
  • LOCATION: la località dell'endpoint dell'API Audit Manager. Per un elenco degli endpoint disponibili, vedi Località di Audit Manager. Ad esempio: us-central1.
  • FRAMEWORK: l'ID del framework in base al quale eseguire il controllo. Ad esempio: builtin-cis-v8. Per trovare l'ID di un framework, consulta la pagina Visualizza test in Audit Manager.
  • BUCKET_URI: l'URI del bucket Cloud Storage. Ad esempio: gs://testbucketauditmanager.
  • AUDIT_REPORT_FORMAT: il formato del report di controllo di output. È supportato solo il formato ODF: AUDIT_REPORT_FORMAT_ODF.

Esegui il comando seguente:

Linux, macOS o 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

Dovresti ricevere una risposta simile alla seguente:

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

REST

(Facoltativo) Genera un test di controllo

Prima di eseguire un controllo vero e proprio, puoi generare un test di controllo (o ambito) che includa una suddivisione dettagliata delle attività per il controllo in base al framework di conformità scelto.

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • RESOURCE_TYPE: il tipo di risorsa, un progetto o una cartella. Ad esempio: folders o projects.
  • RESOURCE_ID: l'ID risorsa del progetto o della cartella. Ad esempio: 8767234.
  • LOCATION: la località dell'endpoint dell'API Audit Manager. Per un elenco degli endpoint disponibili, vedi Località di Audit Manager. Ad esempio: us-central1.
  • FRAMEWORK: l'ID del framework in base al quale eseguire il controllo. Ad esempio: builtin-cis-v8. Per trovare l'ID di un framework, consulta la pagina Visualizza test in Audit Manager.
  • AUDIT_REPORT_FORMAT: il formato del report di controllo di output. È supportato solo il formato ODF: AUDIT_REPORT_FORMAT_ODF.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:


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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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

Dovresti ricevere una risposta JSON simile alla seguente:

{

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

La risposta contiene le seguenti informazioni:

    Il campo scope_reports_contents è il formato byte dei contenuti, che deve essere convertito in formato ODF prima della revisione.

  • name: un identificatore stringa univoco della risorsa applicabile.

Esegui un controllo on demand

Prima di utilizzare i dati della richiesta, apporta le sostituzioni seguenti:

  • RESOURCE_TYPE: il tipo di risorsa, un progetto o una cartella. Ad esempio: folders o projects.
  • RESOURCE_ID: l'ID risorsa del progetto o della cartella. Ad esempio: 8767234.
  • LOCATION: la località dell'endpoint dell'API Audit Manager. Per un elenco degli endpoint disponibili, vedi Località di Audit Manager. Ad esempio: us-central1.
  • FRAMEWORK: l'ID del framework in base al quale eseguire il controllo. Ad esempio: builtin-cis-v8. Per trovare l'ID di un framework, consulta la pagina Visualizza test in Audit Manager.
  • BUCKET_URI: l'URI del bucket Cloud Storage. Ad esempio: gs://testbucketauditmanager.
  • AUDIT_REPORT_FORMAT: il formato del report di controllo di output. È supportato solo il formato ODF: AUDIT_REPORT_FORMAT_ODF.

Metodo HTTP e URL:

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

Corpo JSON della richiesta:


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

Per inviare la richiesta, scegli una di queste opzioni:

curl

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

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

Salva il corpo della richiesta in un file denominato request.json, quindi esegui il comando seguente:

$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

Dovresti ricevere una risposta JSON simile alla seguente:

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

La risposta contiene le seguenti informazioni:

  • name: un identificatore stringa univoco della richiesta di operazione di test di controllo. Questo identificatore viene utilizzato per monitorare l'avanzamento della procedura di test di controllo. Ad esempio: operation/098234.
  • done: un flag booleano impostato su false che indica che la procedura è stata attivata. Questo valore viene impostato su true al termine del test di controllo.

Passaggi successivi