在使这些资源(例如项目)更清晰方面,Google可以做得更好。
实际上(据我所知),所有Google项目都代表相同的基础项目资源,您可以例如从Google Cloud Console查看DialogFlow项目,反之亦然。
我怀疑(!)您创建了2个不同的项目:一个使用(Google Cloud Platform)Console,另一个使用DialogFlow Console
如果安装了Cloud SDK(又名gcloud
),则应该能够使用以下命令列出所有项目(Cloud,DialogFlow等):
gcloud projects list
现在,回答您的问题。 Google(!)项目的用户是Google帐户的用户和组,还包括服务帐户。您可以使用以下命令列出给定项目的用户:
gcloud projects get-iam-policy ${PROJECT}
理想情况下,您要做的是确保在两个项目中都反映此策略。我不愿提供脚本,因为服务帐户使此共享变得复杂。服务帐户跨项目工作,但是它们是在项目中自动创建的。简单的帐户复制和粘贴可能会为您带来麻烦。
也就是说,这是一个gcloud
命令,用于枚举来自一个项目${ROLE}
的{{1}}(roles/owner
)的列表:
${SRC}
NB 如果需要,可能有一种方法可以拆分PSRC=...
ROLE="roles/owner"
MEMBERS=$(gcloud projects get-iam-policy ${PSRC} \
--flatten=bindings \
--filter=bindings.role:${ROLE} \
--format="value(bindings.members)") && echo ${MEMBERS}
然后您可以遍历此列表并将这些帐户添加(!)到user:some@email.com
${PDST}
最后,当您创建DialogFlow项目时,会为您提供使用现有Google(云)项目的选项。下次,您将遵循此流程,请寻找“创建新项目或使用现有项目”的提示。您可以选择以前创建的项目,以重新使用用户。
本文链接:https://www.f2er.com/2728769.html