google-cloud-platform - Google Cloud Deployment Manager - 如何授予 pubsub 发布者对现有主题的服务帐户的访问权限
问题描述
有一个创建 PubSub 主题的现有 Deployment-1。
resources:
- name: customer-updates-topic
type: pubsub.v1.topic
properties:
topic: customer-updates
accessControl:
gcpIamPolicy:
bindings:
- members:
- serviceAccount:955977181320@cloudbuild.gserviceaccount.com
role: roles/pubsub.publisher
- members:
- serviceAccount:955977181320@cloudbuild.gserviceaccount.com
role: roles/pubsub.viewer
我需要创建自己的 Deployment-2,如下所示,我想在其中创建一个服务帐户并授予它在上述部署中创建的主题的发布者角色。
resources:
- name: customer-updates-svc
type: iam.v1.serviceAccount
properties:
accountId: customer-updates-svc
- name: pubsub-topic
type: pubsub.v1.topic
properties:
topic: customer-updates
accessControl:
gcpIamPolicy:
bindings:
- members:
- serviceAccount:$(ref.customer-updates-svc.email)
role: roles/pubsub.publisher
metadata:
dependsOn:
- customer-updates-svc
我的 Deployment-2 工作正常,但它删除了 Deployment-1 设置的 gcpIamPolicy.bindings。
有没有办法将新的 gcpIamPolicy.bindings 添加/附加到现有主题?
谢谢, TM
解决方案
推荐阅读
- angular - ./node_modules/ng2-charts/fesm5/ng2-charts.js 中的警告 230:54-72 “在 '@angular/core' 中找不到导出 'ɵɵdefineInjectable'
- python - 根据特定条件将数据帧一列中的所有行转置为多列
- c# - 脚本任务错误:系统存储不足。服务器响应是:4.5.3。收件人过多 (AS780090)
- hive - 我们如何使用 URL 将数据加载到配置单元中
- struct - 如何在 Julia 中创建结构?
- android - 活动的 Edittext 自动填充覆盖在片段上可见
- java - Googlemaps V2:在 GeoJsonPolygon 上添加信息窗口
- microsoft-graph-api - 通过 Graph API 访问和创建团队聊天
- reactjs - react-setState 不清除文本框
- arrays - “() => x”类型中缺少属性“x”,但在“x”类型中是必需的