在 Google Cloud 中執行法規遵循稽核

執行稽核,收集評估貴機構是否符合法規架構所需的證據。Google Cloud

稽核作業是長時間執行的作業,可能需要幾小時才能完成。稽核範圍 (即您先前註冊的專案或資料夾) 內的資源數量,會影響稽核時間長度。

事前準備

  • 請確認您具備下列任一 IAM 角色:

    • Audit Manager 管理員 (roles/auditmanager.admin)
    • Audit Manager 稽核者 (roles/auditmanager.auditor)
  • 如要針對自訂法規遵循架構執行稽核 (預先發布版),請確認您具備 Audit Manager Custom Compliance Framework 檢視者 (roles/auditmanager.ccfViewer) IAM 角色。

  • 確認專案或資料夾已註冊稽核。

執行稽核

控制台

  1. 前往 Google Cloud 控制台的 Audit Manager「執行評估」頁面。

    前往稽核管理工具

  2. 在「選擇資源和法規」部分,執行下列操作:

    1. 選取要稽核的專案或資料夾。

    2. 選取要用來稽核資源的法規遵循架構。 您可以從「可用架構」清單中,選取內建或自訂的法規遵循架構 (預覽版)。詳情請參閱「支援的法規遵循架構」。

    3. 選取稽核評估的處理位置。如需支援的地點清單,請參閱「稽核管理員地點」。

    4. 點選「下一步」

  3. 選用:在「View Assessment Plan」(查看評估計畫) 部分,您可以下載 ODS 檔案,其中包含根據所選法規遵循架構的稽核範圍資訊。如要下載檔案,請點選連結,然後點選「下一步」

  4. 在「Choose storage bucket」(選擇儲存空間 bucket) 部分,選取要儲存稽核報告和證據的儲存空間 bucket,然後按一下「Done」(完成)。如果沒有看到所需儲存空間,請要求管理員註冊資源,並提供儲存空間。

  5. 如要開始稽核,請按一下「執行稽核」

    您可以在「查看評估」頁面查看稽核狀態。

gcloud

選用:產生稽核評估

執行實際稽核前,您可以產生稽核評估 (或範圍),其中包含根據所選法規遵循架構,詳細列出稽核工作。

gcloud audit-manager audit-scopes generate 指令會產生稽核範圍。

使用下列任何指令資料之前,請先替換以下項目:

  • RESOURCE_TYPE:資源類型,可以是專案或資料夾。例如:folder
  • RESOURCE_ID:專案或資料夾的資源 ID。例如:8767234
  • :Audit Manager API 端點的位置。LOCATION如需可用端點清單,請參閱「稽核管理員位置」。例如:us-central1
  • COMPLIANCE_TYPE:要稽核的法規遵循架構。
    • 如果是內建法規遵循架構,請指定要稽核的架構名稱。 例如:CIS_CONTROLS_V8
    • 如要使用自訂法規遵循架構 (預覽版),請指定架構名稱,格式如下:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • 取代下列項目:
      • ORG_ID:機構 ID
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID:自訂法規遵循架構的 ID
  • AUDIT_REPORT_FORMAT:輸出稽核報告的格式。 僅支援 ODF 格式:odf
  • OUTPUT_DIRECTORY:必須儲存輸出內容的目錄。例如:reports
  • OUTPUT_FILENAME:輸出檔案的名稱。檔案名稱請勿包含副檔名。例如:scopeReport

執行下列指令:

Linux、macOS 或 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

執行稽核

gcloud audit-manager audit-reports generate 指令會執行稽核。

使用下列任何指令資料之前,請先替換以下項目:

  • RESOURCE_TYPE:資源類型,可以是專案或資料夾。例如:folder
  • RESOURCE_ID:專案或資料夾的資源 ID。例如:8767234
  • :Audit Manager API 端點的位置。LOCATION如需可用端點清單,請參閱「稽核管理員位置」。例如:us-central1
  • COMPLIANCE_TYPE:要稽核的法規遵循架構。
    • 如果是內建法規遵循架構,請指定要稽核的架構名稱。 例如:CIS_CONTROLS_V8
    • 如要使用自訂法規遵循架構 (預覽版),請指定架構名稱,格式如下:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • 取代下列項目:
      • ORG_ID:機構 ID
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID:自訂法規遵循架構的 ID
  • BUCKET_URI:Cloud Storage bucket 的 URI。例如: gs://testbucketauditmanager
  • AUDIT_REPORT_FORMAT:輸出稽核報告的格式。 僅支援 ODF 格式:odf

執行下列指令:

Linux、macOS 或 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

您應該會收到類似以下的回應:

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

REST

選用:產生稽核評估

執行實際稽核前,您可以產生稽核評估 (或範圍),其中包含根據所選法規遵循架構,詳細列出稽核工作。

使用任何要求資料之前,請先修改下列項目的值:

  • RESOURCE_TYPE:資源類型,可以是專案或資料夾。例如:folder
  • RESOURCE_ID:專案或資料夾的資源 ID。例如:8767234
  • :Audit Manager API 端點的位置。LOCATION如需可用端點清單,請參閱「稽核管理員位置」。例如:us-central1
  • COMPLIANCE_TYPE:要稽核的法規遵循架構。
    • 如果是內建法規遵循架構,請指定要稽核的架構名稱。 例如:CIS_CONTROLS_V8
    • 如要使用自訂法規遵循架構 (預覽版),請指定架構名稱,格式如下:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
          
    • 取代下列項目:
      • ORG_ID:機構 ID
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID:自訂法規遵循架構的 ID
  • AUDIT_REPORT_FORMAT:輸出稽核報告的格式。 僅支援 ODF 格式:odf
  • OUTPUT_DIRECTORY:必須儲存輸出內容的目錄。例如:reports
  • OUTPUT_FILENAME:輸出檔案的名稱。檔案名稱請勿包含副檔名。例如:scopeReport

HTTP 方法和網址:

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

JSON 要求內文:


{
  "compliance_framework" : "COMPLIANCE_TYPE"
  "report_format" : "AUDIT_REPORT_FORMAT"
}

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

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

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$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

您應該會收到如下的 JSON 回覆:

{

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

執行稽核

使用任何要求資料之前,請先修改下列項目的值:

  • RESOURCE_TYPE:資源類型,可以是專案或資料夾。例如:folder
  • RESOURCE_ID:專案或資料夾的資源 ID。例如:8767234
  • :Audit Manager API 端點的位置。LOCATION如需可用端點清單,請參閱「稽核管理員位置」。例如:us-central1
  • COMPLIANCE_TYPE:要稽核的法規遵循架構。
    • 如果是內建法規遵循架構,請指定要稽核的架構名稱。 例如:CIS_CONTROLS_V8
    • 如要使用自訂法規遵循架構 (預覽版),請指定架構名稱,格式如下:
      organizations/ORG_ID/locations/global/customComplianceFrameworks/CUSTOM_COMPLIANCE_FRAMEWORK_ID
           
    • 取代下列項目:
      • ORG_ID:機構 ID
      • CUSTOM_COMPLIANCE_FRAMEWORK_ID:自訂法規遵循架構的 ID
  • BUCKET_URI:Cloud Storage bucket 的 URI。例如: gs://testbucketauditmanager
  • AUDIT_REPORT_FORMAT:輸出稽核報告的格式。 僅支援 ODF 格式:odf

HTTP 方法和網址:

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

JSON 要求內文:


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

如要傳送要求,請選擇以下其中一個選項:

curl

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

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

將要求主體儲存在名為 request.json 的檔案中,然後執行下列指令:

$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

您應該會收到如下的 JSON 回覆:

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

回應包含下列資訊:

  • name:稽核評估作業要求的專屬字串 ID。 這個 ID 用於追蹤稽核評估程序的進度。例如:operation/098234
  • done:設為 false 的布林值標記,表示已觸發程序。稽核評估完成後,這項屬性會設為 true

scope_reports_contents 欄位是內容的位元組格式,必須先轉換為 ODF 格式才能審查。

後續步驟