【问题标题】:How can I allow a user to become an actor of a service account in Google Cloud Platform (GCP)?如何允许用户成为 Google Cloud Platform (GCP) 中服务帐户的参与者?
【发布时间】:2021-03-19 22:16:27
【问题描述】:

我有一个服务账户,我希望它能够“充当”(在 AWS 中称为“假设”)。我的项目中名为“bucket-viewer-service-account”的服务帐户如下所示:

$ gcloud projects get-iam-policy myproject
bindings:
- members:
  - serviceAccount:123456789012-compute@developer.gserviceaccount.com
  role: roles/editor
- members:
  - user:me@myemail.com
  role: roles/owner
- members:
  - serviceAccount:bucket-viewer-service-account@myproject.iam.gserviceaccount.com
  role: roles/storage.objectViewer
etag: BwVOE_CkjAo=
version: 1

我想授予其他用户“充当”此服务帐户的能力,我已应用以下内容,但还没有走得太远:

$ gcloud iam service-accounts add-iam-policy-binding \
    bucket-viewer-service-account@myproject.iam.gserviceaccount.com \
    --member='user:test.gcp1@myemail.com' --role='roles/iam.serviceAccountActor'
bindings:
- members:
  - user:user:test.gcp1@myemail.com
  role: roles/iam.serviceAccountActor
etag: BwVOFAhEVqY=

为了让用户test.gcp1@myemail.com(一旦他们登录)可以访问服务帐户可用的资源,我只需要这样做吗?或者用户是否需要另一个步骤来“假设”服务帐户?

对于初学者,我已经浏览了许多页面的文档 Understanding Service Accounts,但大多数人似乎都在考虑使用服务帐户的应用程序,其中文档明确提到用户、组等可以使用服务帐户。

【问题讨论】:

    标签: google-cloud-platform


    【解决方案1】:

    iam.serviceAccountActor role 使用户能够创建和管理使用服务帐户的计算引擎实例。

    我可能会误解某些东西,但是如果您想授予某人直接充当服务帐户的权限,最直接的方法可能是为代表该特定用户充当该服务的服务帐户的 create a private key 文件帐户,然后给他们那个私钥文件。

    【讨论】:

      【解决方案2】:

      像您建议的那样,为用户提供服务帐户参与者角色不会传递访问权限。相反,它允许用户“使用”服务帐户来启动以该服务帐户为身份的长时间运行的作业(例如创建计算引擎实例)。

      【讨论】:

        【解决方案3】:

        iam.serviceAccountActor 角色已弃用,您需要使用Service Account User 角色

        More details

        【讨论】:

          猜你喜欢
          • 2020-07-11
          • 2022-11-08
          • 1970-01-01
          • 1970-01-01
          • 2020-04-27
          • 1970-01-01
          • 2020-07-13
          • 2015-01-27
          • 1970-01-01
          相关资源
          最近更新 更多