繁体   English   中英

GCP 预定义每个项目和 Terraform 的 IAM 角色

[英]GCP predefines IAM roles per Project and Terraform

我想为每个文件夹构建 GCP 访问权限,以便文件夹用户只能在文件夹中拥有项目查看器,并且在文件夹中创建的每个项目都应该只允许在项目中为有权访问文件夹的团队使用特定的资源。

我设法创建了文件夹部分,项目将通过 terraform 创建,现在我有一个阻止程序如何使用预定义角色执行每个项目的 iam 权限。 假设我有一个小组需要处理由 terraform 创建的项目 X,该小组将使用 Cloud SQL、计算引擎、网络管理。 因此,理想情况下,我会在 TF 中创建google_project_iam_binding ,其中成员是该组,角色将包含这些资源的预定义 IAM 角色列表。 但这不可能做到,我需要指导如何实现这一点。

resource "google_project_iam_custom_role" "km-role" {
  role_id     = "KnowledgeManagementRole"
  title       = "Knowledge Management Custom Role"
  description = "Test role for KM"
  permissions = [
    "compute.*",
    "networkmanagement.*",
    "resourcemanager.projects.get",
    "resourcemanager.projects.list",
    "serviceusage.quotas.get",
    "serviceusage.services.get",
    "serviceusage.services.list",
  ]
}

不幸的是,不支持*所以在这种情况下,我必须编写 30 多个计算机权限。 您也不能将预定义角色用作自定义 iam 角色中的列表:/。

阅读 GCP 自定义角色文档,除了准确添加您希望角色拥有的所有权限之外,似乎没有办法创建自定义角色,这似乎是一种鼓励自定义角色粒度并避免可能的安全性的方法将基本/预定义角色添加到自定义角色可能导致的事件。

我发现 Public Issue Tracker 中有一个开放的功能请求,可以将预定义的角色添加到自定义角色:

[FR] 能够将预定义的角色添加到自定义角色

如果您对请求“加星标”,您将收到任何重要更新的通知并跟踪其进度。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM