您可以使用標籤,在機構內將存放區和其他資源分組,以便進行報表、稽核和存取權控管。 Google Cloud Google Cloud
如要在 Artifact Registry 中將存放區分組,以利自動化和計費,請使用標籤。標記和標籤各自獨立運作,您可以將兩者套用至相同存放區。如要進一步瞭解標記和標籤之間的差異,請參閱「標記和標籤」。
什麼是代碼?
標記是可以套用至資源的鍵/值組合,用於精細控管存取權。
專案管理員會在機構層級為 Google Cloud 的資源建立標記,並在 Resource Manager 中管理這些標記。將標籤附加至 Artifact Registry 存放區後,您可以使用 IAM 條件搭配標籤,授予存放區的條件式存取權。您無法將標記附加至個別構件。
請注意下列限制:
機構政策可以有條件地參照從父項專案和更上層繼承的標記,但不支援直接附加至存放區的標記。
系統不會針對存放區附加標記和查看標記繫結產生 Cloud 稽核記錄。
如要進一步瞭解標記和使用標記的條件式存取權控管,請參閱「標記和存取權控管」一文。
所需權限
如要取得管理標記所需的權限,請管理員授予下列 IAM 角色:
-
標記檢視者 (
roles/resourcemanager.tagViewer
) 標記附加的資源 -
在機構層級查看及管理標記:
機構檢視者 (
roles/resourcemanager.organizationViewer
) 機構 -
建立、更新及刪除代碼定義:
您要建立、更新或刪除代碼的資源必須具備代碼管理員 (
roles/resourcemanager.tagAdmin
) 權限 -
在資源中附加及移除標記:
標記使用者 (
roles/resourcemanager.tagUser
) 在標記值和要附加/移除標記值的資源上
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
將標記附加至存放區
專案管理員建立標記後,您就可以將標記附加至存放區。每個標記都有鍵和值。將值繫結至存放區,即可標記存放區。
如要將標記附加至存放區,請按照下列步驟操作:
主控台
向管理員索取要附加的標記值。
您可以附加其中一種識別碼類型的標記值:
- 命名空間名稱,例如
123456789012/env/dev
- 永久 ID,例如
tagValues/567890123456
- 命名空間名稱,例如
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
選取要標記的存放區。
在「存放區詳細資料」部分,按一下「顯示更多」。
系統會顯示存放區的現有標記,包括繼承的標記。
按一下「編輯標記」
圖示。
在「直接代碼」部分,按一下「選取範圍」。
選取存放區專案。
在「鍵」欄位中輸入內容來篩選標記清單,然後選取標記鍵。
在「值」欄位中輸入內容,篩選標記清單,然後選取標記值。
按一下 [儲存]。
按一下「確認」。
標記已附加至存放區。
gcloud CLI
向管理員索取要附加的標記值。
您可以附加其中一種識別碼類型的標記值:
- 命名空間名稱,例如
123456789012/env/dev
- 永久 ID,例如
tagValues/567890123456
- 命名空間名稱,例如
使用下列指令附加標記值:
gcloud resource-manager tags bindings create \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATION
替換下列值:
TAG_VALUE
是要附加的標記值永久 ID 或命名空間限定名稱。REPOSITORY_ID
是存放區的完整 ID,包括用於識別資源類型的 API 網域名稱 (//artifactregistry.googleapis.com/
)。例如://artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo
LOCATION
是存放區的位置。
請見如下範例:
- 標記值:
815471563813/env/dev
- 專案:
my-project
- 存放區:
my-repo
- 存放區位置:
us-east1
下列 gcloud CLI 指令會將標記附加至存放區:
gcloud resource-manager tags bindings create \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
列出附加至存放區的標記
您可以列出附加至您有權存取資源的標記。
主控台
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
選取要查看的存放區。
在「存放區詳細資料」部分,按一下「顯示更多」。
「標記」清單會顯示所有存放區標記,包括直接標記,以及資源階層中較高層級的繼承標記。
gcloud CLI
如要列出附加至存放區的標記,請執行下列指令:
gcloud resource-manager tags bindings list \
--parent=REPOSITORY_ID \
--location=LOCATION
這項指令只會列出直接附加至指定資源的標記,因此不會傳回從上層專案或更上層繼承的標記。如要列出從上層專案沿用的標記,請指定專案,而非使用 --parent
旗標的存放區。
舉例來說,下列指令會列出專案 my-project
和位置 us-east1
中,附加至存放區 my-repo
的標記:
gcloud resource-manager tags bindings list \
--parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \
--location=us-east1
這個指令會列出附加至專案編號 7890123456
的標記:
gcloud resource-manager tags bindings list \
--parent=//cloudresourcemanager.googleapis.com/projects/7890123456 \
從存放區卸離標記
您可以卸離直接附加至存放區的標記。如要移除從父項專案或資源階層其他部分繼承的標記,專案管理員必須從標記附加的資源分離標記。
如要移除附加至存放區的標記,請按照下列步驟操作:
主控台
取得要移除的標記值。如果您不知道標記值,請列出附加至存放區的標記。
在 Google Cloud 控制台中開啟「Repositories」(存放區) 頁面。
選取存放區。
在「存放區詳細資料」部分,按一下「顯示更多」。
系統會顯示存放區的現有標記,包括繼承的標記。
按一下「編輯標記」
圖示。
在「直接標記」部分中,找出要移除的標記。
找出要移除的標記,然後按一下旁邊的「刪除」
圖示。按一下 [儲存]。
按一下「確認」。
標記會從存放區中移除。
gcloud CLI
取得要移除的標記值。如果您不知道標記值,請列出附加至存放區的標記。
使用下列指令卸離標記值:
gcloud resource-manager tags bindings delete \ --tag-value=TAG_VALUE \ --parent=REPOSITORY_ID \ --location=LOCATION
替換下列值:
要卸離的
TAG_VALUE
標記值。REPOSITORY_ID
是存放區的完整 ID,包括用於識別資源類型的 API 網域名稱 (//artifactregistry.googleapis.com/
)。例如://artifactregistry.googleapis.com/projects/my-project/my-repo
LOCATION
是存放區的位置。
請見如下範例:
- 標記值:
815471563813/env/dev
- 專案:
my-project
- 存放區:
my-repo
- 存放區位置:
us-east1
下列 gcloud CLI 指令會從存放區卸離標記:
gcloud resource-manager tags bindings delete \ --tag-value=815471563813/env/dev \ --parent=//artifactregistry.googleapis.com/projects/my-project/locations/us-east1/repositories/my-repo \ --location=us-east1
後續步驟
- 瞭解存放區標籤。