VM 管理員將 OS 政策指派作業套用至虛擬機器 (VM) 執行個體後,系統會產生 OS 政策指派作業報表。這份報表會列出套用至特定 VM 的所有 OS 政策,以及指定 OS 政策指派作業的法規遵循狀態。
本文說明下列工作:
- 查看機構或資料夾中所有 VM 的 OS 政策遵循報告。
- 查看指定可用區中所有 VM 的 OS 政策指派作業報表。這有助於概覽特定區域的法規遵循狀態。請參閱「查看 OS 政策指派作業報表」。
- 查看特定 VM 的 OS 政策指派作業。這項功能有助於查看特定 VM 的法規遵循狀態。請參閱「查看 OS 政策指派作業報表」。
事前準備
- 查看 OS 設定配額。
-
如果尚未設定驗證,請先完成設定。
驗證可確認您的身分,以便存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,可以選取下列任一選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
安裝 Google Cloud CLI。 安裝完成後,執行下列指令初始化 Google Cloud CLI:
gcloud init
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
- Set a default region and zone.
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
安裝 Google Cloud CLI。 安裝完成後,執行下列指令初始化 Google Cloud CLI:
gcloud init
如果您使用外部識別資訊提供者 (IdP),請先 使用聯合身分登入 gcloud CLI。
詳情請參閱 Google Cloud 驗證說明文件中的「Authenticate for using REST」。
必要角色和權限
如要取得查看 OS 政策合規資料所需的權限,請要求管理員授予下列 IAM 角色:
-
查看機構或資料夾中 VM 的 OS 政策遵循摘要:
-
OSPolicyAssignmentReport 檢視者 (
roles/osconfig.osPolicyAssignmentReportViewer
) 機構或資料夾 -
OSPolicyAssignment 檢視者 (
roles/osconfig.osPolicyAssignmentViewer
) 機構或資料夾
-
OSPolicyAssignmentReport 檢視者 (
-
查看專案中 VM 的 OS 政策指派作業報表:
專案的「OSPolicyAssignmentReport 檢視者」 (
roles/osconfig.osPolicyAssignmentReportViewer
)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
這些預先定義的角色具備查看 OS 政策合規資料所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:
所需權限
如要查看 OS 政策合規資料,必須具備下列權限:
-
查看機構或資料夾中 VM 的 OS 政策遵循摘要:
-
osconfig.osPolicyAssignmentReports.searchSummaries
-
osconfig.osPolicyAssignments.searchPolicies
-
resourcemanager.projects.get
-
resourcemanager.projects.list
-
查看機構或資料夾中所有 VM 的 OS 政策遵循摘要
您可以使用 Google Cloud 控制台,查看機構或資料夾中所有 VM 的 OS 政策遵循摘要。
VM 管理員只會顯示符合下列任一條件的專案 OS 政策遵循摘要:
- 包含一或多個已啟用並執行 VM 管理員的 VM。
- 包含一或多部 VM,這些 VM 在過去 7 天內執行過 VM 管理員,且提供 OS 政策合規資料。
如要查看 OS 政策合規資料,請按照下列步驟操作:
在 Google Cloud 控制台中,依序前往「Compute Engine」 >「VM Manager」 >「OS policies」(作業系統政策) 頁面。
在 Google Cloud 控制台頂端的專案下拉式清單中,選取要查看 OS 政策合規摘要的機構或資料夾。
您可以透過下列選項查看作業系統政策的合規資料:
- 如要查看各專案的 OS 政策遵循摘要,請按一下「專案」分頁標籤。
- 如要查看各項政策的 OS 政策遵循摘要,請按一下「OS 政策」分頁標籤。
選用:使用查詢產生器指定計算 OS 政策合規摘要的條件。
查看 VM 的 OS 政策法規遵循摘要。「專案」分頁中的表格會為每個專案顯示一列,如下圖所示:
表格會列出符合您在查詢產生器中指定條件的下列資訊:
- 專案:機構中至少含有一個 VM,並已啟用 VM 管理員的專案名稱。
- VM 總數:每個專案中的 VM 總數。
- 受監控的 VM:專案中符合下列狀態的 VM 數量:已啟用 VM 管理員代理程式,而且正在執行是否符合政策規定的掃描作業。
- 設有政策的 VM:至少獲派一項政策的 VM 數量。
- 符合規定:報告中所有獲派政策都符合規定的 VM 數量 (
COMPLIANT
)。 - 不符合規定:報告中至少有一項獲派政策不符合規定的 VM 數量。
NON-COMPLIANT
- 不明:報告中至少有一項獲派政策為
UNKNOWN
,且沒有任何政策為NON-COMPLIANT
的 VM 數量。UNKNOWN
狀態的原因如下:- VM 未執行。
- VM 未啟用 VM 管理員代理程式。
- 處理過程中發生錯誤。
- 沒有報告:已獲派政策,但找不到任何政策遵循報告的 VM 數量,原因如下:
- VM 未啟用 VM 管理員代理程式。
- 正在進行合規掃描。報表尚未準備就緒。
選用:如要查看 OS 政策合規摘要表格中的特定資料列,請套用表格篩選器。
舉例來說,如要查看 VM 數量超過 10 個的專案 OS 政策遵循摘要,請將「VM 總數」篩選器選項設為
>= 10
。選用:按一下 VM 數量,即可查看特定狀態的 VM 詳細資料。舉例來說,按一下「Unknown」(不明) 欄中特定專案的 VM 數量,會開啟「VM instances」(VM 執行個體) 分頁,並列出該專案中每個 VM 的不明 OS 政策。
詳情請參閱「查看 OS 政策指派報告」。
使用查詢建立工具篩選 OS 政策法規遵循資料
根據您在查詢建構工具中指定的條件,VM 管理員會顯示機構或資料夾中專案內 VM 的 OS 政策遵循資料。然後,您可以使用 OS 政策合規表格中的表格篩選器,篩選顯示的資料。
舉例來說,如果您在查詢建構工具中將
OS
屬性設為Debian
,VM 管理員就會顯示搭載 Debian OS 的 VM 作業系統政策合規資料。如要查看特定專案的法規遵循資料,請使用表格篩選器指定專案 ID。如要在「專案」分頁的查詢建立工具中設定查詢,請按照下列步驟操作:
選取「屬性」。查詢製作工具支援下列屬性:
- 作業系統:指定作業系統的簡短名稱,例如
Windows
或Debian
。 - 作業系統版本:指定作業系統版本。例如
21.04
或10.0.22000
。您可以在 OS 版本字串結尾指定單一星號 (*
) 表示部分相符,例如10*
。 - VM 執行中:指定是否要查看處於
RUNNING
狀態的 VM 修補程式摘要。 - 政策指紋:指定 OS 政策的專屬政策指紋。設定這項屬性後,VM 管理員只會針對具有指定指紋的 OS 政策計算法規遵循摘要。
- 法規遵循狀態:指定政策的其中一種法規遵循狀態:
COMPLIANT
:所有獲派政策都回報為COMPLIANT
的 VMNON-COMPLIANT
:至少有一項獲派政策不符合規定的 VMNON-COMPLIANT
UNKNOWN
:至少有一項獲派政策不符合規定的 VMUNKNOWN
- 作業系統:指定作業系統的簡短名稱,例如
選擇其中一個屬性,並指定屬性的值。 舉例來說,如要查看特定作業系統的 VM 修補程式摘要,請選取「OS」。接著,系統會顯示比較運算子清單供您選擇。
- 選取「運算子」,例如
==
。 - 在「值」欄位中,指定比較值。例如
Debian
。
- 選取「運算子」,例如
如要新增其他屬性,請按一下「新增條件」。
按一下 [搜尋]。
查看 OS 政策指派作業報表
如要查看 OS 政策指派報告,可以使用 Google Cloud 控制台、Google Cloud CLI 或 REST。
使用這個程序,查看特定位置的 OS 政策指派報表清單。
主控台
如果您使用 VPC Service Controls 保護服務,請將 Cloud Asset Inventory 服務新增至允許的服務清單。詳情請參閱可透過虛擬私有雲存取的服務。
前往 Google Cloud 控制台的「OS policies」>「VM instances」頁面。
gcloud
如要查看 OS 政策指派報表清單,請使用
os-config os-policy-assignment-reports list
指令。如要查看特定位置的所有 OS 政策指派報表,請執行下列指令。將
ZONE
替換為 VM 所在的區域。gcloud compute os-config os-policy-assignment-reports list --location=ZONE
指令和輸出內容範例 (所有 VM)
gcloud compute os-config os-policy-assignment-reports list --location=us-central1-a INSTANCE ASSIGNMENT_ID LOCATION UPDATE_TIME SUMMARY centos7 my-test-assignment1 us-central1-a 2021-11-02T18:14:03.908341Z 0/1 policies compliant centos7 my-test-assignment2 us-central1-a 2021-11-02T18:14:03.908341Z 0/1 policies compliant rhel-8 my-test-assignment1 us-central1-a 2021-11-02T19:13:28.468290Z 0/1 policies compliant rhel-8 my-test-assignment2 us-central1-a 2021-11-02T19:13:28.468290Z 0/1 policies compliant my-centos my-test-assignment1 us-central1-a 2021-11-02T18:14:37.418883Z 1/1 policies compliant my-centos my-test-assignment2 us-central1-a 2021-11-02T18:14:37.418883Z 0/1 policies compliant deb-10 my-test-assignment2 us-central1-a 2021-11-02T19:00:11.777748Z 0/1 policies compliant windows my-test-assignment2 us-central1-a 2021-11-02T18:24:07.935711Z 0/1 policies compliant windows my-test-assignment3 us-central1-a 2021-11-02T18:24:07.935711Z 0/1 policies compliant sles15 my-test-assignment2 us-central1-a 2021-11-02T18:38:07.335276Z 0/1 policies compliant
您也可以使用
--instance
或--assignment-id
等選用標記來篩選結果。gcloud compute os-config os-policy-assignment-reports list --location=ZONE \ [--instance=VM_NAME | --assignment-id=ASSIGNMENT_ID]
更改下列內容:
ZONE
:VM 所在的可用區- 選用:提供下列其中一項資訊:
VM_NAME
:要查看 OS 政策指派作業報表的 VM 名稱或 IDASSIGNMENT_ID
:您要查看 OS 政策指派作業報表的 OS 政策指派作業 ID
指令和輸出內容範例 (特定 VM)
gcloud compute os-config os-policy-assignment-reports list --location=us-central1-a \ --instance=my-centos INSTANCE ASSIGNMENT_ID LOCATION UPDATE_TIME SUMMARY my-centos my-test-assignment1 us-central1-a 2021-11-02T18:14:37.418883Z 1/1 policies compliant my-centos my-test-assignment2 us-central1-a 2021-11-02T18:14:37.418883Z 0/1 policies compliant
指令和輸出內容範例 (特定指派)
gcloud compute os-config os-policy-assignment-reports list --location=us-central1-a \ --assignment-id=my-test-assignment1 INSTANCE ASSIGNMENT_ID LOCATION UPDATE_TIME SUMMARY centos7 my-test-assignment1 us-central1-a 2021-11-02T18:14:03.908341Z 0/1 policies compliant rhel-8 my-test-assignment1 us-central1-a 2021-11-02T19:13:28.468290Z 0/1 policies compliant my-centos my-test-assignment1 us-central1-a 2021-11-02T18:14:37.418883Z 1/1 policies compliant
REST
在 API 中,建立目標為
projects.locations.osPolicyAssignments.reports.list
方法的GET
要求。GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/VM_NAME/osPolicyAssignments/OS_POLICY_ASSIGNMENT_ID/report
更改下列內容:
PROJECT_ID
:您的專案 IDZONE
:VM 所在的可用區- (選用步驟) 請提供下列其中一項資訊:
VM_NAME
:要查看 OS 政策指派作業報表的 VM 名稱或 ID。如非必要,請使用-
做為值。ASSIGNMENT_ID
:您要查看 OS 政策指派作業報表的 OS 政策指派作業 ID。 如非必要,請使用-
做為值。
範例:
- 如要查看專案
my-project-12345
和可用區us-central1-a
中所有 VM 的報表,請使用下列 URI:projects/my-project-12345/locations/us-central1-a/instances/-/osPolicyAssignments/-/report
- 如要查看專案
my-project-12345
中位於區域us-central1-a
的 VMmy-test-vm
報表,請使用下列 URI:projects/my-project-12345/locations/us-central1-a/instances/my-test-vm/osPolicyAssignments/-/report
- 如要查看專案
my-project-12345
和可用區us-central1-a
中所有具有my-test-assignment
OS 政策指派作業的 VM 報表,請使用下列 URI:projects/my-project-12345/locations/us-central1-a/instances/-/osPolicyAssignments/my-test-assignment/report
查看 OS 政策指派報表
請使用這個程序,詳細查看與特定 VM 相關聯的 OS 政策指派報表。
主控台
如果您使用 VPC Service Controls 保護服務,請將 Cloud Asset Inventory 服務新增至允許的服務清單。詳情請參閱可透過虛擬私有雲存取的服務。
前往 Google Cloud 控制台的「OS policies」>「VM instances」頁面。
如要查看特定 VM 的 OS 政策指派作業報表,請按一下該 VM 的名稱。
查看「狀態」、「狀態原因」和「記錄」欄位。「記錄」欄位提供 Cloud Logging 資訊主頁的連結,您可以在該處存取 VM 上執行的 OS 設定代理程式偵錯記錄。
- 如要進一步瞭解傳回的法規遵循狀態,請參閱
ComplianceState
API 參考說明文件中的章節。 - 如要進一步瞭解傳回的法規遵循原因,請參閱
OSPolicyResourceCompliance
API 參考說明文件中的complianceStateReason
欄位。
如要修正這些問題,您也可以查看 OS 政策的記錄,並進行必要的更新。 如要查看記錄,請參閱「排解 VM 管理員問題」。
- 如要進一步瞭解傳回的法規遵循狀態,請參閱
gcloud
如要查看特定 VM 的 OS 政策指派作業報表,請使用
os-config os-policy-assignment-reports describe
指令。gcloud compute os-config os-policy-assignment-reports describe OS_POLICY_ASSIGNMENT_ID \ --instance=VM_NAME \ --location=ZONE
更改下列內容:
OS_POLICY_ASSIGNMENT_ID
:您要為指定 VM 檢查的 OS 政策指派 IDVM_NAME
:要查看 OS 政策指派作業報表的 VM 名稱或 IDZONE
:VM 所在的可用區
示例
gcloud compute os-config os-policy-assignment-reports describe my-test-assignment1 \ --instance=centos7 \ --location=us-central1-a
輸出內容
instance: centos7 lastRunId: 96a61b92-3e14-4155-a3e8-dd66520f49ae name: projects/1234578882888/locations/us-central1-a/instances/29255009728795105/osPolicyAssignments/my-test-assignment1/report osPolicyAssignment: projects/1234578882888/locations/us-central1-a/osPolicyAssignments/my-test-assignment1t@3428384d-fa61-478e-b7e2-3d5fae74bea3 osPolicyCompliances: – complianceState: UNKNOWN complianceStateReason: os-policies-not-supported-by-agent osPolicyId: setup-repo-and-install-package-policy osPolicyResourceCompliances: – complianceState: UNKNOWN complianceStateReason: os-policy-execution-attempt-failed osPolicyResourceId: setup-repo – complianceState: UNKNOWN complianceStateReason: os-policy-execution-attempt-failed osPolicyResourceId: install-pkg updateTime: '2021-11-02T19:14:34.314831Z'
請參閱《
complianceState
》和《complianceStateReason
》。- 如要進一步瞭解傳回的法規遵循狀態,請參閱
ComplianceState
API 參考說明文件中的章節。 - 如要進一步瞭解傳回的法規遵循原因,請參閱
OSPolicyResourceCompliance
API 參考說明文件中的complianceStateReason
欄位。
如要修正這些問題,您也可以查看 OS 政策的記錄,並進行必要的更新。 如要查看記錄,請參閱「排解 VM 管理員問題」。
- 如要進一步瞭解傳回的法規遵循狀態,請參閱
REST
在 API 中,建立目標為
projects.locations.osPolicyAssignments.reports.get
方法的GET
要求。GET https://osconfig.googleapis.com/v1/projects/PROJECT_ID/locations/ZONE/instances/VM_NAME/osPolicyAssignments/OS_POLICY_ASSIGNMENT_ID/report
更改下列內容:
PROJECT_ID
:您的專案 IDZONE
:VM 所在的可用區VM_NAME
:要查看 OS 政策指派作業報表的 VM 名稱或 IDOS_POLICY_ASSIGNMENT_ID
:您要查看 OS 政策指派作業報表的 OS 政策指派作業 ID
請參閱《
complianceState
》和《complianceStateReason
》。- 如要進一步瞭解傳回的法規遵循狀態,請參閱
ComplianceState
API 參考說明文件中的章節。 - 如要進一步瞭解傳回的法規遵循原因,請參閱
OSPolicyResourceCompliance
API 參考說明文件中的complianceStateReason
欄位。
如要修正這些問題,您也可以查看 OS 政策的記錄,並進行必要的更新。 如要查看記錄,請參閱「排解 VM 管理員問題」。
- 如要進一步瞭解傳回的法規遵循狀態,請參閱
後續步驟
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-09-03 (世界標準時間)。
-