首页 > 解决方案 > 用于管理虚拟机的 Google Cloud Compute Engine API 密钥

问题描述

我想通过脚本在 GCP 中启动/停止/重启虚拟机。为此有 OAuth2.0 和 API 密钥方法。

对于 OAuth 2.0,我可以通过“gcloud auth print-access-token”生成访问令牌,我得到了密钥并且它可以工作。

我想同样使用 API 密钥,但无法找到“计算引擎”的 API 密钥,有服务帐户,但有密钥。

curl --request POST \ ' https://www.googleapis.com/compute/v1/projects/xxxx/zones/xxx/instances/xxx/stop?key=[YOUR_API_KEY] ' \ --header '接受:应用程序/ json' \ --压缩

我错过了什么?

谢谢。

标签: apigoogle-cloud-platformgoogle-compute-engine

解决方案


您不能为此目的使用 API 密钥。这是因为 GCE API 需要知道谁在发送请求1,但 API 密钥不提供此信息。

当任何人都可以访问 API 时使用 API 密钥,例如嵌入在网站中的 Google 地图框,但使用需要考虑到一个特定的客户。

1需要身份来执行 IAM 权限、收集审计日志和其他此类工具。


推荐阅读