標記總覽

Google Cloud 資源階層結構可將資源整理成樹狀結構。這個階層架構可協助您大規模管理資源,但只能模擬少數業務維度,包括機構架構、區域、工作負載類型和成本中心。階層結構缺乏彈性,無法將多個業務維度分層組合。

標記可為資源建立註解,在某些情況下,您還能將資源是否具備特定標記設為條件,並按照這項條件允許或拒絕政策。只要使用標記並依據條件強制執行政策,即可精細控管資源階層結構。

標記和標籤

標籤是為資源建立註解的另一種方式。 下表列出標記和標籤的一些差異:

標記 標籤
資源結構 標記鍵、標記值和標記繫結都是個別資源 本身不是資源,而是資源的中繼資料
定義 在機構或專案層級定義 由各個資源定義
存取控管 管理及附加標記需要 Identity and Access Management (IAM) 角色 附加標籤需要 IAM 角色,這會因服務資源而異
附件的必要條件 必須先定義標記鍵和標記值,才能將標記附加至資源 附件沒有先決條件
是否沿用設定 資源的子項會繼承 Google Cloud 階層中的標記繫結 資源的子項不會繼承這項設定
刪除規定 如要刪除代碼,必須先移除該代碼的所有代碼繫結 隨時可從資源中移除
命名規定 代碼值代碼鍵的規定 標籤規定
鍵/值名稱長度 最多可輸入 256 個半形字元 最多 63 個半形字元
支援允許和拒絕政策 標記可供允許政策條件拒絕政策條件參照 不支援允許和拒絕政策
機構政策支援 機構政策條件限制可參照部分資源的標記 不支援機構政策
Cloud Billing 整合 執行退款、稽核和其他費用分配分析,將 Cloud Billing 費用資料匯出至 BigQuery 在 Cloud Billing 中依標籤篩選資源,將 Cloud Billing 資料匯出至 BigQuery

如要進一步瞭解標籤,請參閱「建立及管理標籤」。

建立標記

標記的結構為鍵/值組合。標記鍵資源可在機構或專案資源下建立,標記值則是附加至鍵的資源,例如標記鍵 environment 具有值 productiondevelopment

標記管理

管理員可以限制哪些使用者可建立、更新、刪除及將標記附加至資源,藉此控管標記的使用情形。他們可以選取個別標記進行編輯,例如新增或移除值,以及更新說明。方便您精細控管代碼。

代碼可選擇性提供說明,在擷取代碼相關資訊時顯示。說明可協助將標記附加至資源的使用者瞭解標記的用途。

在父項專案或機構中,每個標記鍵都不得重複。這可確保每個標籤值繫結至資源時,都會與標籤鍵建立不重複的配對。

政策與標記

您可以同時使用標記和 IAM 條件,達到下列目的:

建立標記值後,即可將標記值繫結至資源。接著,您可以建立含有條件的 IAM 政策,根據標記鍵是否已繫結至資源來識別資源。如要瞭解如何使用標記和 IAM 條件,請參閱「標記和條件式存取權」。

使用機構政策強制執行必要標記

您可以使用機構政策,在資源上強制執行標記。 強制執行必要標記後,您只能建立符合機構標記政策的資源,也就是資源會繫結至政策中指定必要標記鍵的標記值。詳情請參閱「設定自訂限制來強制執行標記」。

下列資源類型支援強制執行標記:

  • Resource Manager 專案和資料夾
  • Filestore 執行個體
  • AlloyDB for PostgreSQL 叢集和備份資源
  • 工作流程

標記繼承

將標記值附加至資源後,資源的所有子系預設都會繼承相同的標記值。您可以在子項資源上覆寫繼承的標記值。如要覆寫沿用的標記值,請將不同的標記值繫結至子代資源。不同標記值必須使用與沿用標記值相同的標記鍵。

舉例來說,假設您將 environment: development 標記套用至資料夾,而該資料夾有兩個名為 team-ateam-b 的子資料夾。您也可以將其他標記 environment: test 套用至 team-b 資料夾。因此,team-a 資料夾中的專案和其他資源會繼承 environment: development 標籤,而 team-b 資料夾中的專案和其他資源則會繼承 environment: test 標籤:

如果從 team-b 資料夾中移除 environment: test 標記,該資料夾及其資源就會沿用 environment: development 標記。

附加至資源並由資源繼承的所有標記,統稱為「有效標記」。資源的有效標記是直接附加至資源的標記,以及附加至整個階層中所有資源上層的標記。

使用含有 IAM 條件的標記時,建議您為 IAM 條件使用的每個標記鍵建立安全預設標記值。將安全預設標記值繫結至機構,讓機構內的所有資源都可沿用該標記值,藉此套用安全預設標記值。如要變更標記值,請明確覆寫相關資源的繼承繫結。舉例來說,假設您有 IAM 條件,該條件取決於 enforcement 標籤鍵的 on 標籤值,而該標籤鍵也有 off 標籤值。將標記值 enforcement: off 繫結至機構,建立安全預設值,並將該值繼承至機構內的所有資源。只在機構內選取的資源中繫結標記值 enforcement: on

接著,您可以編寫政策來處理 enforcement 標記鍵,並根據資源是否為 enforcement: onenforcement: off 設定條件,以及在資源為 enforcement: default 時設定安全案例。如果從資源中移除 enforcement 標記鍵,資源就能從父項資源繼承 enforcement 的標記值。如果沒有父項資源具有 enforcement 標記鍵,資源就會從機構資源繼承 enforcement: default

使用安全預設標記有助於避免這種情況,但為防止發生非預期行為,建議您先檢查現有的標記和條件政策,再移動資源或移除標記。

刪除標籤鍵和值

如要刪除標記值,必須先刪除使用該標記值的所有資源繫結。

防止刪除標記值

您可以將代碼保留附加至代碼值,為代碼值建立額外的保護層。標記保留與標記繫結類似,可防止使用者刪除標記值。

部分資源會自動為附加至資源的每個標記值建立標記保留。必須先移除這項標記保留,才能刪除標記值。

後續步驟