google-cloud-platform - Google Cloud IAM 添加大量用户
问题描述
我正在将大量用户从组织添加到我的项目中。该组织由我的大学管理,我无法从那里直接访问用户。我必须手动输入电子邮件选择用户并添加它。
有什么方法可以通过在 Windows 上使用云 SDK、编写一些程序或任何搜索电子邮件并添加它们的网络自动化工具来自动化这个过程?
我有一个电子邮件模式,但不是确切的电子邮件。因此,这将搜索此模式并将组织 IAM 中存在的所有内容添加到我的项目中,或者只是搜索并给我电子邮件列表。
GCloud IAM 场景:
- 由大学管理的组织,其中包含所有用户。
- 我是访问受限的用户
- 我在这个组织下创建了自己的项目 我无法访问组织 IAM 仪表板和通过 CLI
- 但是当我开始在我的项目的添加成员窗口中输入电子邮件时,它会提供所有匹配的用户列表
- 我想掌握所有这些电子邮件。
解决方案
我完全理解你的情况,
首先,您至少需要拥有权限
- 资源管理器.projects.get
- resourcemanager.projects.getIamPolicy
- resourcemanager.projects.setIamPolicy
您可以要求您的管理员授予您名为的角色
- 项目 IAM 管理员 (roles/resourcemanager.projectIamAdmin)
- 安全管理员 (roles/iam.securityAdmin)
在我看来,您应该编写一个 bash shell,允许您循环您的用户电子邮件地址并添加每个成员以通过此命令授予权限
gcloud projects add-iam-policy-binding my-project \
--member=user:my-user@example.com --role=roles/viewer
在这种情况下:
my-project
是您的项目名称
my-user@example.com
是您要授予的电子邮件
roles/viewer
是您要授予用户的角色名称
推荐阅读
- ios - ViewController 的标题意外消失
- r - 森林图,对多个变量进行排序和汇总
- google-bigquery - 将旧日志从 Stackdriver 导出到 Bigquery
- python - 使用 Python 对列中的多个值进行复杂的提取和转换
- javascript - Leaflet-React:L 未定义
- reactjs - 构建受保护的路线时,反应应用程序中没有历史记录属性
- reactjs - 如何在本机反应中获取获取的响应时间?
- r - 使用数据和分组的方法绘制线图
- c# - Redis C# - 在事务中使用 Incr 值
- java - 使用优先级通过集合和过滤器进行流式传输