首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >当您将服务帐户分配给云运行服务时,究竟会发生什么?

当您将服务帐户分配给云运行服务时,究竟会发生什么?
EN

Stack Overflow用户
提问于 2020-04-27 14:40:06
回答 2查看 5.2K关注 0票数 1

为了提高容器的安全性,我试图了解将服务帐户分配给云运行服务实际上是做什么的。我在云运行服务中运行了多个进程,并不是所有进程都需要访问项目资源。

我想到的一个更具体的问题是:,我是否能够创建多个用户并以没有访问服务帐户或每个用户都可以访问服务帐户的用户的身份运行某些进程?

我在VM实例上运行了一个小实验(我想这将是一个类似于Cloud的例子),在这个例子中,我创建了一个新用户,在创建之后,它没有被授权使用实例的服务帐户。但是,我不确定是否有一种方法可以使我的方法不安全。

谢谢。

编辑

为了执行测试,我创建了一个新os用户,并使用了新用户帐户中的"gcloud auth list“。然而,我应该提出一个卷曲请求,我可以检索凭据,如下面的答复所指出的那样。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-04-27 20:36:28

你的问题不是很清楚,但我会尝试提供几个投入。

当您在Cloud上运行一个服务时,您有两个选择来定义它的身份

  • 要么是使用的是计算引擎服务帐户(默认情况下,不指定任何内容)
  • 或者是您在部署时指定的服务帐户

这个服务帐户对于云运行服务是有效的(每个项目最多可以有1000个不同的服务)。

现在,当您运行容器时,服务帐户并没有真正加载到容器中(对于计算引擎来说是一样的),但是有一个API可以请求这个服务帐户的身份验证数据。它叫元数据服务器

它不限于用户(我不知道您如何在Compute Engine上执行测试!),一个简单的卷曲就足以获得数据。

例如,在使用库和使用“默认凭据”时使用此元数据服务器。gcloud也使用它。

我希望你现在有个更好的视野。如果没有,请在问题或评论中添加详细信息。

票数 3
EN

Stack Overflow用户

发布于 2020-04-28 04:34:39

纪尧姆回答中缺少的关键字是“权限”。

具体来说,如果不分配服务帐户,云运行将使用计算引擎默认服务帐户

这个默认帐户在您的项目中具有Editor角色(换句话说,它可以在您的GCP项目上执行几乎任何事情,除非创建新的服务帐户并给予它们访问权限,或者删除GCP项目)。如果您使用默认服务帐户,并且您的容器被破坏,您可能会遇到麻烦。⚠️

但是,如果您指定了一个新的--service-account,默认情况下它没有权限。您必须绑定它的角色或权限(例如、PubSub Publisher.)你的应用程序需要。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61461409

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档