You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何授权外部开发者启停指定Google Compute Engine虚拟机实例?

给外部开发者授予仅启停Compute Engine实例的权限方案

刚好碰到过类似的需求!GCP里确实没有现成的「Compute Instance User」预定义角色,但完全可以通过自定义IAM角色来实现这种精准的权限控制,而且外部用户也能正常获取这个权限——只要你能拿到他们的Google账号邮箱(或者他们有Google Workspace/Cloud Identity账号)就行。

下面是一步步的实现方法:

1. 创建仅含启停权限的自定义角色

我们需要创建一个只包含启停实例必需权限的角色,避免给开发者过多权限。需要的权限有三个:

  • compute.instances.start:允许启动实例
  • compute.instances.stop:允许停止实例
  • compute.instances.get:允许查看实例状态(gcloud工具执行启停命令时必须要这个权限来验证实例是否存在,别漏了!)

方法一:通过GCP控制台创建

  • 打开GCP控制台,进入「IAM & Admin > 角色」页面
  • 点击「创建角色」,填写角色名称(比如叫InstanceStartStopOnly)和描述(比如“仅允许启停指定的Compute Engine实例”)
  • 点击「添加权限」,搜索并选中上面三个权限,然后完成创建

方法二:用gcloud命令行快速创建

替换下面的YOUR_PROJECT_ID为你的项目ID,直接执行:

gcloud iam roles create InstanceStartStopOnly \
  --project=YOUR_PROJECT_ID \
  --title="Instance Start/Stop Only" \
  --description="Grants permission to start and stop Compute Engine instances" \
  --permissions=compute.instances.start,compute.instances.stop,compute.instances.get

2. 把自定义角色授予外部开发者

  • 进入GCP控制台的「IAM & Admin > IAM」页面
  • 点击「添加」按钮
  • 在「新成员」输入框里填开发者的Google账号邮箱(比如dev@external-domain.com)
  • 在「角色」下拉框里搜索你刚才创建的自定义角色,选中它
  • 点击「保存」就完成授权了

3. 可选但强烈推荐:限制权限到特定实例

如果你的项目里有多个实例,不想让开发者能随便启停所有实例,可以通过条件绑定来缩小权限范围:

  • 在添加IAM成员的时候,点击「添加条件」
  • 设置规则:比如资源类型选「Compute Instance」,资源名称匹配你的目标实例ID或名称
  • 这样开发者就只能操作你指定的那个实例,安全性更高

4. 开发者那边的简单配置

开发者只需要做这几步就能用了:

  1. 安装gcloud CLI(按照GCP官方的安装步骤来就行,各个系统都有对应教程)
  2. 执行gcloud auth login,用你授权的那个账号登录
  3. 设置默认项目:gcloud config set project YOUR_PROJECT_ID
  4. 测试下命令:
    • 启动实例:gcloud compute instances start YOUR_INSTANCE_NAME --zone YOUR_INSTANCE_ZONE
    • 停止实例:gcloud compute instances stop YOUR_INSTANCE_NAME --zone YOUR_INSTANCE_ZONE

这样配置后,开发者只能执行这两个启停命令,其他gcloud操作(比如创建实例、修改配置、访问其他GCP服务)都会被权限拒绝,完美符合你的需求。

另外补充一句:如果开发者没有Google账号,也可以用服务账号来实现,但服务账号需要生成密钥,管理起来要注意安全;相比之下,用开发者自己的Google账号更方便也更安全。


内容的提问来源于stack exchange,提问作者Vasilis

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.21 03:47:42