您可以授予GCE实例删除自身的权限,但不能删除其他实例吗?

时间:2018-08-08 18:01:02

标签: google-compute-engine

是否可以授予Google Compute Engine实例删除自身的权限而又不授予其删除其他实例的权限?

也就是说,我希望实例名称ABC能够运行:

gcloud compute instances delete ABC

使用自己的名字ABC,但没有其他名字。

要从delete instance API docs中删除您必须拥有的项目中的任何实例,

在我看来,您要么有权删除项目中的任何实例,要么根本不删除任何实例。

1 个答案:

答案 0 :(得分:1)

否,分配给实例的服务帐户正在运行gcloud命令而不是实例。

通过设置将角色授予用户,组或服务帐户作为项目成员的策略来授予权限。 示例:角色"compute Instance Admin"可以创建,修改和删除虚拟机实例,这意味着项目中的所有实例。您无法指定特定实例。

以下gcloud命令可以应用于ABC实例或项目中的任何其他实例。

gcloud compute instances delete ABC --zone <zone>

compute.instances.delete 权限具有以下角色:

  • 计算管理员
  • 计算实例管理员
  • 项目编辑器
  • 项目负责人

您还可以创建具有混合权限的custom Role并将其分配给将具有此权限的服务帐户,但是您需要确保设置操作所需的每个权限。

“范围”用于选择您授予VM授予的API访问的类型和级别。

默认情况下:对存储和服务管理的只读访问权限,对Stackdriver Logging and Monitoring的写访问权限,对服务控制的读/写访问权限

但是您可以选择我的意思是服务帐户可以访问VM的Cloud API。