Artifact Registry 使用 Google 代管式服务账号(称为 Artifact Registry 服务代理)在连接到其他 Cloud de Confiance 服务时代表您执行操作。您可以向服务代理授予 IAM 角色,以便该代理与 Cloud Key Management Service 中的客户管理的加密密钥 (CMEK) 和 Pub/Sub 中的代码库事件通知等服务集成。
当您在Cloud de Confiance 项目中创建第一个 Artifact Registry 代码库时,Artifact Registry 会创建 Artifact Registry 服务代理。服务代理标识符为:
service-PROJECT-NUMBER@gcp-sa-artifactregistry.s3ns-system.iam.gserviceaccount.com
PROJECT-NUMBER 是运行 Artifact Registry 的Cloud de Confiance 项目的项目编号。
您可以使用以下命令在没有任何代码库的项目中手动创建服务代理:
gcloud beta services identity create \
--service=artifactregistry.s3nsapis.fr \
--project=PROJECT-ID
将 PROJECT-ID 替换为 Cloud de Confiance 项目 ID。
系统会为 Artifact Registry 服务代理授予项目内资源的 Artifact Registry Service Agent 角色 (roles/artifactregistry.serviceAgent)。为了强制执行最小权限原则安全原则,该角色仅具有最低必需权限:
- 发布 Pub/Sub 主题:
pubsub.topics.publish - 从 Artifact Registry 制品库下载制品:
artifactregistry.repositories.downloadArtifacts - 读取代码库元数据:
artifactregistry.repositories.get - 使用虚拟制品库读取制品:
artifactregistry.repositories.readViaVirtualRepository - 删除制品:
artifactregistry.versions.delete