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

如何配置Rundeck向Google Cloud Compute API发起API调用并完成认证

Rundeck 对接 Google Cloud Compute API 认证实操方案

首先明确:GCP 公有云 API 原生不支持基础认证(Basic)方案,你此前尝试 Basic 认证的方向本身不可行,无需再投入时间调试,仅需聚焦 OAuth2 相关配置即可,以下是已验证可跑通的实操流程:

前置准备

  • 登录 GCP 控制台进入 IAM 管理页,创建专属服务账号,根据你的业务需求分配 Compute API 对应权限(遵循最小权限原则,测试阶段可临时授予Compute Admin角色)
  • 导出该服务账号的 JSON 格式密钥文件,上传至 Rundeck 服务器的安全目录,比如/etc/rundeck/gcp-compute-sa.json
  • 调整密钥文件权限,确保 Rundeck 运行用户可读取:
    chown rundeck:rundeck /etc/rundeck/gcp-compute-sa.json && chmod 600 /etc/rundeck/gcp-compute-sa.json

两种可行的认证配置方式

方式1:使用 Rundeck 内置 GCP 凭据插件(推荐)

  • 确认 Rundeck 版本 ≥ 3.3.x,该版本及以上默认预装 GCP 服务账号凭据插件,无需额外安装
  • 进入对应项目的「项目设置」-「密钥存储」(如需全局可用则进入系统级密钥存储),选择「导入凭据」,凭据类型选择 Google Cloud Service Account Key
  • 上传之前导出的服务账号 JSON 密钥文件,或者直接粘贴文件内容,给凭据设置易识别的名称,比如gcp-compute-access-key
  • 配置调用 GCP Compute API 的作业时,HTTP 步骤的认证模块直接选择上述存储的 GCP 凭据即可,Rundeck 会自动生成有效期 1 小时的 OAuth2 访问令牌,自动附加到请求头中
  • 快速验证:作业中新增一个 HTTP 步骤,请求方法选 GET,请求地址填https://compute.googleapis.com/compute/v1/projects/你的GCP项目ID/zones,认证选择刚配置的 GCP 凭据,运行作业如果返回当前项目下的可用区列表即为配置成功

方式2:手动封装 gcloud 命令调用(适合复杂自定义场景)

  • 先在 Rundeck 所在服务器安装 Google Cloud SDK,安装完成后切换到 Rundeck 运行用户,执行认证初始化:
    gcloud auth activate-service-account --key-file=/etc/rundeck/gcp-compute-sa.json
  • 简单 API 调用可直接使用 gcloud 原生命令,比如列出所有虚拟机实例的命令为:
    gcloud compute instances list --project 你的GCP项目ID --format json
  • 如需自定义 HTTP 请求,可通过 gcloud 命令手动获取令牌拼接请求,示例代码如下:
    # 生成当前有效访问令牌
    ACCESS_TOKEN=$(gcloud auth print-access-token)
    # 调用Compute API查询指定可用区下的实例列表
    curl -H "Authorization: Bearer ${ACCESS_TOKEN}" \
    https://compute.googleapis.com/compute/v1/projects/你的GCP项目ID/zones/us-central1-a/instances
    

常见踩坑排查

  • 服务账号权限不足:可直接查看 GCP IAM 审计日志,确认被拒绝的请求对应的权限缺失项,补充到服务账号的角色中即可
  • OAuth2 scope 配置不全:如果是手动配置 OAuth2 请求,需要给令牌添加对应 API 的 scope,Compute API 完整权限 scope 为https://www.googleapis.com/auth/compute,只读场景可使用https://www.googleapis.com/auth/compute.readonly
  • 密钥文件权限错误:如果 Rundeck 运行用户没有密钥文件的读取权限,会直接返回认证失败,需严格按照前置准备中的权限要求配置

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.17 17:24:10