GCP 服务帐户角色和权限跨项目

GCP Service Accounts roles & permissions cross project

我已经开发了以下代码来自动执行我的一些实例的 start/stop 任务,这些实例不需要一直 运行 而是在特定范围内。

所以这是我的代码:https://github.com/maartinpii/gcp-shst

我按照 google 云平台指南(参考:https://cloud.google.com/iam/docs/understanding-service-accounts https://cloud.google.com/iam/docs/service-accounts#service_account_permissions)创建了一个服务帐户,所以我在项目 A 中创建了一个服务 SC-Auto,然后在 IAM 选项卡中创建了它们其他项目并赋予它 "Project Owner" 角色。

注意:从我所在的位置 运行 我还执行了 gcloud auth 服务帐户 ... 如前所述

然而,当我执行我的代码时,我遇到了以下情况:

所以现在我想知道是否可以使用相同的服务帐户在我配置它的所有项目中执行功能并赋予它正确的权限,或者我是否需要为每个项目创建不同的服务帐户或者如果我做错了什么...

在此先感谢您的帮助!

调试和分析后,我发现我无法使用服务帐户操作的项目有一个 Name,它与 ID(参考:https://cloud.google.com/resource-manager/docs/creating-managing-projects#Identifying projects

所以当我用 ID 替换项目名称时它工作正常。