【问题标题】:Google Cloud Adding a user to a projectGoogle Cloud 将用户添加到项目
【发布时间】:2017-10-25 13:16:40
【问题描述】:

我希望能够以编程方式将用户添加到存在于谷歌云中的项目中。我可以通过控制台执行此操作,方法是转到 Iam 和管理员,选择一个项目,然后搜索一个用户,选择一个角色并添加它们。此外,docs 似乎说这应该是可能的

项目所有者可以授予团队成员访问项目的访问权限 通过向团队成员授予 IAM 角色来获取资源和 API。你可以 使用 Cloud Platform Console 向团队成员授予角色, 云命令行工具,或 setIamPolicy() 方法。

但是 API seems 缺少这个方法。

我可以授予用户对特定资源的访问权限,但我不能授予他们与控制台相同的所有资源访问级别。

我可以使用什么 API 调用来授予给定用户对给定项目中所有资源的只读访问权限?

【问题讨论】:

    标签: google-cloud-platform google-apis-explorer


    【解决方案1】:

    就在你链接的地方:)

    你想做的是:
    1.Get current policy.
    这将为您提供 JSON 响应,向您展示结构应该是什么样的。
    2. 做出改变。如果已经有 roles/viewer 的条目,则追加到 members 列表,否则创建条目:

    ...
    {
       "role": "roles/viewer",
       "members": [
        "user:your.friend@gmail.com"
       ]
      },
    ...
    

    3。 Set the new policy。

    对于list of possible roles look here.

    【讨论】:

    • 这个方法需要我指定一个资源。我的理解是项目不是资源。如何使用此方法授予用户对项目中所有资源的访问权限?
    • 这只是项目的名称。我同意,这里的文档可能会更清楚一些。实际上,对单个资源(如计算引擎实例、存储桶等)设置 IAM 策略是通过它们各自的 API 完成的,而不是这种方法。
    • @RobertLacock 这种方法对您的项目名称有效吗?使用项目名称或项目 ID 会给我“收到无效的 JSON 有效负载。未知名称 \"body_resource\": 找不到字段。”
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-05-31
    • 2019-03-25
    • 1970-01-01
    • 1970-01-01
    • 2022-11-11
    • 1970-01-01
    • 2019-08-12
    相关资源
    最近更新 更多