標記 Cloud Workstations 資源

本文說明如何使用標記,有條件地將 Identity and Access Management (IAM) 政策套用至 Cloud Workstations 叢集。

標記是可直接附加至 Cloud Workstations 叢集的鍵/值組合。Cloud Workstations 叢集也可以從其他Google Cloud 資源沿用標記。您可以根據資源是否具備特定標記,有條件地套用政策。舉例來說,您可能會在任何具有 environment:dev 標記的 Cloud Workstations 叢集上,有條件地將 Cloud Workstations Creator 角色授予主體。

如要進一步瞭解如何在 Google Cloud資源階層中使用標記,請參閱標記總覽

事前準備

您必須授予 IAM 角色,讓使用者具備必要權限,才能執行本文件中的各項工作。您也需要建立要附加至資源的標記鍵和值。

必要的角色

下列角色可提供標記 Cloud Workstations 資源所需的權限:

將標記附加至 Cloud Workstations 叢集

如要取得將標記附加至 Cloud Workstations 叢集所需的權限,請要求管理員授予下列 IAM 角色:

如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。

這些預先定義角色具備將標記附加至 Cloud Workstations 叢集所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要將標記附加至 Cloud Workstations 叢集,您必須具備下列權限:

  • workstations.workstationClusters.createTagBinding 叢集
  • resourcemanager.tagValueBindings.create 標記值
  • workstations.workstationClusters.create 在建立叢集時,在叢集上附加標籤
  • workstations.workstationClusters.update 更新叢集時,在叢集上附加標記

您或許還可透過自訂角色或其他預先定義的角色取得這些權限。

從 Cloud Workstations 叢集移除標記

如要取得從 Cloud Workstations 叢集移除標記所需的權限,請要求管理員授予下列 IAM 角色:

  • 如要從 Cloud Workstations 叢集移除標記,請按照下列步驟操作: 專案的 Cloud Workstations 管理員 (roles/workstations.admin)
  • 如要管理標記: 標記使用者 (roles/resourcemanager.tagUser) 標記值和 Cloud Workstations 集群
  • 如要刪除標記: 標記管理員 (roles/resourcemanager.tagAdmin) 在專案中

這些預先定義角色具備從 Cloud Workstations 叢集移除標記所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要從 Cloud Workstations 叢集移除標記,您必須具備下列權限:

  • workstations.workstationClusters.deleteTagBinding 叢集
  • resourcemanager.tagValueBindings.delete 標記值
  • workstations.workstationClusters.update 更新叢集時,移除叢集上的標記

列出附加至 Cloud Workstations 叢集的標記

如要取得列出附加至 Cloud Workstations 叢集標記所需的權限,請要求管理員授予下列 IAM 角色:

  • 如要列出附加至 Cloud Workstations 叢集的標記,請執行下列操作: 在專案中,Cloud Workstations 管理員 (roles/workstations.admin)
  • 如要列出標記: 標記檢視器 (roles/resourcemanager.tagViewer) 標記值和 Cloud Workstations 叢集

這些預先定義的角色具備列出附加至 Cloud Workstations 叢集的標記所需的權限。如要查看確切的必要權限,請展開「必要權限」部分:

所需權限

如要列出附加至 Cloud Workstations 叢集的標記,必須具備下列權限:

  • resourcemanager.tagKeys.list 標記鍵的父項
  • resourcemanager.tagKeys.get 標籤鍵
  • resourcemanager.tagValues.list 標記值父項
  • resourcemanager.tagValues.get 標記值
  • workstations.workstationClusters.listTagBindings 叢集
  • workstations.workstationClusters.listEffectiveTags 叢集

建立標記鍵和值

您必須先建立標記並設定其值,才能附加標記。 如要建立標記鍵和標記值,請參閱「建立標記」和「新增標記值」。

為 Cloud Workstations 叢集加上標記

以下各節說明如何將標記附加至新的和現有的 Cloud Workstations 叢集、列出附加至 Cloud Workstations 叢集的標記,以及從 Cloud Workstations 叢集卸離標記。

建立新的 Cloud Workstations 叢集時附加標記

建立標記後,您可以將其附加至新的 Cloud Workstations 叢集。 每個標記鍵可附加一個標記值至 Cloud Workstations 叢集。每個 Cloud Workstations 叢集最多可附加 50 個標記。

主控台

  1. 前往 Google Cloud 控制台的「Cloud Workstations」頁面。

    前往「Workstations」(工作站)

  2. 按一下「叢集管理」部分。

  3. 點選「建立」

  4. 輸入新 Cloud Workstations 叢集的資訊。 詳情請參閱「建立工作站叢集」。

  5. 在「標記」部分中,選取要新增至新 Cloud Workstations 叢集的標記。

  6. 點選「建立」

gcloud

使用 gcloud workstations clusters create 指令並加上 --tags 旗標:

gcloud workstations clusters create WORKSTATIONS_CLUSTER_NAME \
    --region=LOCATION \
    --tags=TAG \
    --project=WORKSTATIONS_PROJECT_ID

更改下列內容:

  • WORKSTATIONS_CLUSTER_NAME:Cloud Workstations 叢集名稱。
  • LOCATION:叢集所在的區域。
  • TAG:您要附加至新 Cloud Workstations 叢集的標記。多個標記之間以半形逗號分隔。例如:556741164180/env:prod,myProject/department:sales。每個標記都必須有命名空間限定鍵名和值簡稱
  • WORKSTATIONS_PROJECT_ID:工作站專案的 ID。

API

呼叫 workstationClusters.create 方法。在 WorkstationClustertags 欄位中加入標記。

將標記附加至現有的 Cloud Workstations 叢集

建立標記後,即可將其附加至現有的 Cloud Workstations 叢集。每個標記鍵可附加一個標記值至 Cloud Workstations 叢集。每個 Cloud Workstations 叢集最多可附加 50 個標記。

主控台

  1. 前往 Google Cloud 控制台的「Cloud Workstations」頁面。

    前往「Workstations」(工作站)

  2. 按一下「叢集管理」部分。

  3. 按一下要附加標記的 Cloud Workstations 叢集。

  4. 按一下 [編輯]

  5. 在「標記」部分中,選取要新增至 Cloud Workstations 叢集的標記。

  6. 按一下 [儲存]

gcloud

如要使用指令列將標記附加至 Cloud Workstations 叢集,請使用 gcloud resource-manager tags bindings create 指令建立標記繫結資源:

gcloud resource-manager tags bindings create \
    --tag-value=TAGVALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

更改下列內容:

  • TAGVALUE_NAME:要附加的標記值永久 ID 或命名空間名稱,例如 tagValues/45678901231234567/my_tag_key/my_tag_value
  • RESOURCE_ID:Cloud Workstations 叢集的完整 ID,包括 API 網域名稱 (//workstations.googleapis.com/),用於識別資源類型。例如: //workstations.googleapis.com/projects/my_project/locations/us-central1/workstationClusters/my_cluster
  • LOCATION:Cloud Workstations 叢集的區域。

API

呼叫 workstationClusters.patch 方法。在 WorkstationClustertags 欄位中加入標記。

列出附加至 Cloud Workstations 叢集的標記

您可以列出直接附加至 Cloud Workstations 叢集的標記。這個程序不會列出從父項資源繼承的標記。

主控台

  1. 前往 Google Cloud 控制台的「Cloud Workstations」頁面。

    前往「Workstations」(工作站)

  2. 按一下「叢集管理」部分。

  3. 按一下要列出標記的 Cloud Workstations 叢集。

  4. 標籤會顯示在「標籤」部分。

gcloud

如要取得附加至資源的標記繫結清單,請使用 gcloud resource-manager tags bindings list 指令

gcloud resource-manager tags bindings list \
    --parent=RESOURCE_ID \
    --location=LOCATION

更改下列內容:

  • RESOURCE_ID:Cloud Workstations 叢集的完整 ID,包括 API 網域名稱 (//workstations.googleapis.com/),用於識別資源類型。例如://workstations.googleapis.com/projects/my_project/locations/us-central1/workstationClusters/my_cluster

  • LOCATION:Cloud Workstations 叢集的區域。

API

呼叫 v3.tagBindings.list 方法。在父項欄位中加入 Cloud Workstations 叢集。例如://cloudresourcemanager.googleapis.com/projects/my-project/regions/us-central1/workstationClusters/my-cluster

從 Cloud Workstations 叢集卸離標記

如要從 Cloud Workstations 叢集移除標記關聯,請刪除標記繫結。 如要刪除標記,請先按照下列步驟,從 Cloud Workstations 叢集卸離標記。

主控台

  1. 前往 Google Cloud 控制台的「Cloud Workstations」頁面。

    前往「Workstations」(工作站)

  2. 按一下「叢集管理」部分。

  3. 按一下要卸離標記的 Cloud Workstations 叢集。

  4. 按一下 [編輯]

  5. 在「標記」部分,移除要從 Cloud Workstations 叢集卸離的標記。

  6. 按一下 [儲存]

gcloud

如要使用指令列從 Cloud Workstations 叢集移除標記關聯,請使用 gcloud resource-manager tags bindings delete 指令刪除標記繫結:

gcloud resource-manager tags bindings delete \
    --tag-value=TAGVALUE_NAME \
    --parent=RESOURCE_ID \
    --location=LOCATION

更改下列內容:

  • TAGVALUE_NAME:要附加的標記值永久 ID 或命名空間名稱,例如 tagValues/45678901231234567/my_tag_key/my_tag_value
  • RESOURCE_ID:Cloud Workstations 叢集的完整 ID,包括 API 網域名稱 (//workstations.googleapis.com/),用於識別資源類型。例如: //workstations.googleapis.com/projects/my_project/locations/us-central1/workstationClusters/my_cluster
  • LOCATION:Cloud Workstations 叢集的區域。

API

呼叫 workstationClusters.patch 方法。移除 WorkstationClustertags 欄位中的標記。

後續步驟