Cloud Key Management Service 提供為 Cloud KMS 金鑰新增標籤的選項。標籤為鍵/值組合,可用於將相關的 Cloud KMS 金鑰分組,並儲存 Cloud KMS 金鑰的中繼資料。
標籤會在帳單中顯示,方便您瞭解每個標籤的成本分布情形。
您可以使用 Google Cloud CLI 和 Cloud KMS REST API 新增、更新及移除金鑰標籤。
您可以將標籤與其他 Google Cloud 資源搭配使用,例如虛擬機器資源和儲存空間值區。如要進一步瞭解如何在 Google Cloud中使用標籤,請參閱「建立及管理標籤」一文。
什麼是標籤?
標籤是鍵/值組合,可指派給 Google Cloud Cloud KMS 金鑰。這些標籤可協助您整理這些資源,並以所需精細度大規模管理費用。您可以為每項資源加上標籤,並根據標籤篩選資源。標籤的相關資訊會轉送至帳單系統,方便您依據標籤查看帳單費用明細。您可以使用內建的帳單報表,依資源標籤篩選及分組費用。您也可以使用標籤查詢帳單資料匯出內容。
標籤需求
套用於資源的標籤必須符合下列需求條件:
- 每項資源最多可有 64 個標籤。
- 每個標籤都必須是鍵/值組合。
- 鍵的長度必須至少為 1 個字元,最多 63 個字元,且不能空白。值可以空白,長度上限為 63 個字元。
- 鍵和值只能使用小寫字母、數字字元、底線和連字號。所有字元都必須使用 UTF-8 編碼,且可使用國際字元。鍵的開頭必須是小寫字母或國際字元。
- 標籤中的鍵部分不得重複。但可讓多個資源使用相同的鍵。
這些限制適用於每個標籤的鍵和值,以及具有標籤的個別 Google Cloud 資源。您可以在專案內的所有資源中套用任意數量的標籤。
標籤的常見用法
以下是一些常見的標籤用途:
團隊或成本中心標籤:依據團隊或成本中心來新增標籤,藉此區別不同團隊 (例如
team:research
和team:analytics
) 擁有的 Cloud KMS 金鑰。這個類型的標籤可用於成本會計或預算編列作業。元件標籤:例如
component:redis
、component:frontend
、component:ingest
和component:dashboard
。環境或階段標籤:例如
environment:production
和environment:test
。狀態標籤:例如
state:active
、state:readytodelete
和state:archive
。擁有權標籤:用於識別負責作業的團隊,例如
team:shopping-cart
。
我們不建議您建立大量的不重複標籤,例如為時間戳記或每個 API 呼叫的個別值建立標籤。這種做法的問題是,如果值經常變更,或鍵會使目錄變得雜亂,就很難有效篩選及回報資源。
標籤
標籤可用於資源的可查詢註解,但無法用於設定政策條件。您可將資源是否具備特定標記設為條件,並按照這項條件允許或拒絕政策。詳情請參閱「標記總覽」。
建立具有標籤的金鑰
建立金鑰時,您可以提供一或多個鍵/值組合做為標籤來為金鑰加上標籤。
控制台
前往 Google Cloud 控制台的「Key Management」頁面。
找出您要在哪個金鑰環中建立金鑰,然後按一下該金鑰環名稱。
按一下 [Create key] (建立金鑰)。
在「Key name」中輸入金鑰的名稱。
根據您的需求設定鍵。
按一下「其他設定」。
針對要新增的每個標籤,按一下「Add label」,然後輸入「Key」和「Value」。
按一下 [建立]。
gcloud
如要在指令列上使用 Cloud KMS,請先安裝或升級至最新版 Google Cloud CLI。
本範例將說明如何建立新鍵並指派標籤。您也可以為現有金鑰新增標籤。
gcloud kms keys create KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --purpose PURPOSE \ --labels "LABEL_LIST"
更改下列內容:
KEY_NAME
:鍵的名稱。KEY_RING
:您要建立金鑰的金鑰環。LOCATION
:金鑰環的位置,例如global
。PURPOSE
:金鑰用途,例如encryption
。LABEL_LIST
:以逗號分隔的鍵/值組合清單,其中每個組合的格式為LABEL_KEY=LABEL_VALUE
。例如:env=prod,team=research
。每個標籤鍵只能在 Cloud Key Management Service 金鑰中使用一次。如果您多次指定標籤鍵,且值不同,則每個新值都會覆寫先前的值。
如要瞭解所有旗標和可能的值,請搭配 --help
旗標執行指令。
C#
如要執行這段程式碼,請先設定 C# 開發環境,然後安裝 Cloud KMS C# SDK。
Go
如要執行這段程式碼,請先設定 Go 開發環境,然後安裝 Cloud KMS Go SDK。
Java
如要執行這段程式碼,請先設定 Java 開發環境,然後安裝 Cloud KMS Java SDK。
Node.js
如要執行這段程式碼,請先設定 Node.js 開發環境,然後安裝 Cloud KMS Node.js SDK。
PHP
如要執行這段程式碼,請先瞭解如何在 Google Cloud上使用 PHP,並安裝 Cloud KMS PHP SDK。
Python
如要執行這段程式碼,請先設定 Python 開發環境,然後安裝 Cloud KMS Python SDK。
Ruby
如要執行這段程式碼,請先設定 Ruby 開發環境,然後安裝 Cloud KMS Ruby SDK。
API
使用 CryptoKeys.create
方法建立新金鑰,並在要求主體中加入 labels
屬性,即可新增標籤。例如:
{
"purpose": "ENCRYPT_DECRYPT",
"labels": [
{
"key": "LABEL_KEY",
"value": "LABEL_VALUE"
}
]
}
更改下列內容:
LABEL_KEY
:標籤的鍵,例如env
。LABEL_VALUE
:標籤的值,例如prod
。
您可以新增多個標籤鍵,每個鍵都有各自的值。每個標籤鍵只能在 Cloud Key Management Service 金鑰中使用一次。如果您多次指定標籤鍵,且值不同,則每個新值都會覆寫先前的值。
查看金鑰的標籤
控制台
前往 Google Cloud 控制台的「Key Management」頁面。
按一下要檢查的金鑰所屬的金鑰環名稱。
按一下頁首中的「顯示資訊面板」。
在面板中,選擇「標籤」分頁標籤。
gcloud
如要在指令列上使用 Cloud KMS,請先安裝或升級至最新版 Google Cloud CLI。
gcloud kms keys describe KEY_NAME \ --keyring KEY_RING \ --location LOCATION
更改下列內容:
KEY_NAME
:您要查看標籤的鍵名稱。KEY_RING
:金鑰所屬金鑰環的名稱。LOCATION
:金鑰環的位置。
如需所有旗標和可能值的相關資訊,請搭配 --help
旗標執行指令。
C#
如要執行這段程式碼,請先設定 C# 開發環境,然後安裝 Cloud KMS C# SDK。
Go
如要執行這段程式碼,請先設定 Go 開發環境,然後安裝 Cloud KMS Go SDK。
Java
如要執行這段程式碼,請先設定 Java 開發環境,然後安裝 Cloud KMS Java SDK。
Node.js
如要執行這段程式碼,請先設定 Node.js 開發環境,然後安裝 Cloud KMS Node.js SDK。
PHP
如要執行這段程式碼,請先瞭解如何在 Google Cloud上使用 PHP,並安裝 Cloud KMS PHP SDK。
Python
如要執行這段程式碼,請先設定 Python 開發環境,然後安裝 Cloud KMS Python SDK。
Ruby
如要執行這段程式碼,請先設定 Ruby 開發環境,然後安裝 Cloud KMS Ruby SDK。
API
這些範例會使用 curl 做為 HTTP 用戶端,以示範如何使用 API。如要進一步瞭解存取控制,請參閱「存取 Cloud KMS API」。
如要查看套用至金鑰的標籤,請使用 CryptoKeys.get
方法:
curl "https://cloudkms.googleapis.com/v1/projects/PROJECT_ID/locations/LOCATION/keyRings/KEY_RING/cryptoKeys/KEY_NAME" \ --request "GET" \ --header "authorization: Bearer TOKEN" \ --header "content-type: application/json" \ --header "x-goog-user-project: PROJECT_ID"
更改下列內容:
PROJECT_ID
:包含金鑰環的專案 ID。KEY_NAME
:您要查看標籤的鍵名稱。KEY_RING
:金鑰所屬金鑰環的名稱。LOCATION
:金鑰環的位置。
新增或更新標籤
控制台
前往 Google Cloud 控制台的「Key Management」頁面。
按一下要檢查的金鑰所屬的金鑰環名稱。
按一下頁首中的「顯示資訊面板」。
在面板中,選擇「標籤」分頁標籤。
直接在對應的文字欄位中編輯標籤值。
如要編輯標籤的鍵,請新增一個含有所需鍵名稱的新標籤,然後按一下要刪除的標籤旁的「刪除」圖示
。按一下 [儲存]。
gcloud
如要在指令列上使用 Cloud KMS,請先安裝或升級至最新版 Google Cloud CLI。
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --update-labels "LABEL_LIST"
KEY_NAME
:鍵的名稱。KEY_RING
:金鑰所屬的金鑰環。LOCATION
:金鑰環的位置。LABEL_LIST
:以逗號分隔的鍵/值組合清單,其中每個組合的格式為LABEL_KEY=LABEL_VALUE
。例如:env=prod,team=research
。每個標籤鍵只能在 Cloud Key Management Service 金鑰中使用一次。如果您多次指定標籤鍵,且值不同,則每個新值都會覆寫先前的值。
如需所有旗標和可能值的相關資訊,請搭配 --help
旗標執行指令。
C#
如要執行這段程式碼,請先設定 C# 開發環境,然後安裝 Cloud KMS C# SDK。
Go
如要執行這段程式碼,請先設定 Go 開發環境,然後安裝 Cloud KMS Go SDK。
Java
如要執行這段程式碼,請先設定 Java 開發環境,然後安裝 Cloud KMS Java SDK。
Node.js
如要執行這段程式碼,請先設定 Node.js 開發環境,然後安裝 Cloud KMS Node.js SDK。
PHP
如要執行這段程式碼,請先瞭解如何在 Google Cloud上使用 PHP,並安裝 Cloud KMS PHP SDK。
Ruby
如要執行這段程式碼,請先設定 Ruby 開發環境,然後安裝 Cloud KMS Ruby SDK。
Python
如要執行這段程式碼,請先設定 Python 開發環境,然後安裝 Cloud KMS Python SDK。
API
這些範例會使用 curl 做為 HTTP 用戶端,以示範如何使用 API。如要進一步瞭解存取控制,請參閱「存取 Cloud KMS API」。
使用 CryptoKeys.patch 方法並在要求主體中加入 labels
屬性,即可為現有金鑰新增或更新標籤。例如:
{
"labels": [
{
"key": "LABEL_KEY",
"value": "LABEL_VALUE"
}
]
}
移除標籤
控制台
前往 Google Cloud 控制台的「Key Management」頁面。
按一下要檢查的金鑰所屬的金鑰環名稱。
按一下頁首中的「顯示資訊面板」。
在面板中,選擇「標籤」分頁標籤。
找出要刪除的標籤,然後按一下旁邊的「刪除」
圖示。按一下 [儲存]。
gcloud
如要在指令列上使用 Cloud KMS,請先安裝或升級至最新版 Google Cloud CLI。
gcloud kms keys update KEY_NAME \ --keyring KEY_RING \ --location LOCATION \ --remove-labels "LABEL_KEYS"
KEY_NAME
:鍵的名稱。KEY_RING
:金鑰所屬的金鑰環。LOCATION
:金鑰環的位置。LABEL_LIST
:您要從鍵中移除的標籤鍵清單,以逗號分隔,例如env,team
。
如需所有旗標和可能值的相關資訊,請搭配 --help
旗標執行指令。
C#
如要執行這段程式碼,請先設定 C# 開發環境,然後安裝 Cloud KMS C# SDK。
Go
如要執行這段程式碼,請先設定 Go 開發環境,然後安裝 Cloud KMS Go SDK。
Java
如要執行這段程式碼,請先設定 Java 開發環境,然後安裝 Cloud KMS Java SDK。
Node.js
如要執行這段程式碼,請先設定 Node.js 開發環境,然後安裝 Cloud KMS Node.js SDK。
PHP
如要執行這段程式碼,請先瞭解如何在 Google Cloud上使用 PHP,並安裝 Cloud KMS PHP SDK。
Python
如要執行這段程式碼,請先設定 Python 開發環境,然後安裝 Cloud KMS Python SDK。
Ruby
如要執行這段程式碼,請先設定 Ruby 開發環境,然後安裝 Cloud KMS Ruby SDK。
API
這些範例會使用 curl 做為 HTTP 用戶端,以示範如何使用 API。如要進一步瞭解存取控制,請參閱「存取 Cloud KMS API」。
使用 CryptoKeys.patch 方法並在要求主體中加入 labels
屬性做為空陣列,即可移除現有金鑰的標籤。例如:
{
"labels": []
}
稽核記錄
您可以在建立或更新金鑰時,使用 Cloud KMS 的 Cloud 稽核記錄來記錄標籤資訊。金鑰建立與更新均為管理員活動,而對標籤的變更會記錄在管理員活動記錄中。