python - Remove a User from GCP project
问题描述
How do I remove a user from a GCP project. I have a requirement to delete a particular user and service account for a particular GCP project.
credentials = service_account.Credentials.from_service_account_file(
filename=os.environ['GOOGLE_APPLICATION_CREDENTIALS'],
scopes=['https://www.googleapis.com/auth/cloud-platform'])
I tried using this
def modify_policy_remove_member(policy, role, member):
"""Removes a member from a role binding."""
binding = next(b for b in policy["bindings"] if b["role"] == role)
if "members" in binding and member in binding["members"]:
binding["members"].remove(member)
print(binding)
return policy
Another way I tried was
service.projects().serviceAccounts().disable(
name='projects/-/serviceAccounts/' + email).execute()
I am getting the following message.
Permission iam.serviceAccounts.disable is required to perform this operation on
解决方案
要添加或更新现有用户的 IAM 策略,您至少应该拥有“resourcemanager.projects.setIamPolicy”权限。或者你应该是项目的所有者。为确保您拥有足够的权限,请在控制台中检查您的 IAM 角色,然后运行:
'gcloud iam 角色描述角色/'
这将列出您与当前角色关联的所有权限。
推荐阅读
- java - Hibernate - 延迟初始化失败
- python - 如何将数据作为时间序列导出到 Excel?
- python - 在 Kubernetes 上部署时,pytorch 模型评估速度很慢
- javascript - 我正在尝试编写一个 BMI 计算器和错误“未捕获的类型错误:无法设置未定义的属性 'src'”我很新,这不是最终的
- java - 在 Java 中将 Set 的 Set 转换为 List 的列表
- angular - 如何在登录前在 Angular Web 应用程序中保留一个值并在登录后使用它?
- java - 如何使用 adb 命令在 java 中获取 android 应用程序活动名称
- javascript - JS 记住在页面重新加载时切换类状态
- ios - 数据包隧道提供程序 - iOS:TCP 连接被对等方关闭
- android - Android 底页总是贴在左上角