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

使用Terraform API添加GPG密钥遇403错误:body namespace未授权

Terraform Cloud API添加GPG密钥遇403 "body namespace not authorized"问题解决

问题背景

已创建组织级API令牌,通过Terraform API添加GPG密钥时,请求体中namespace使用了令牌所属组织的精确名称(区分大小写),但收到403错误响应:

{
    "errors": [
        {
            "status": "403",
            "title": "forbidden",
            "detail": "body namespace not authorized"
        }
    ]
}

排查与解决方案

  • 检查API令牌权限
    组织级API令牌必须具备Manage Private Registry权限(对应权限标识registry:manage)。创建令牌时需手动勾选该权限,默认组织令牌不会自动包含此权限。登录Terraform Cloud,进入组织设置的「Tokens」页面,查看目标令牌的权限配置。

  • 确认namespace的准确性
    确保namespace参数使用的是组织的slug(URL短名称),而非显示名称。组织slug可从Terraform Cloud组织页面的URL中获取(例如https://app.terraform.io/app/my-org中的my-org),且严格区分大小写。

  • 验证API端点正确性
    请求必须发送到对应组织的私有注册表GPG密钥端点:

    POST /api/v2/organizations/{organization_slug}/private-registry/gpg-keys
    

    避免使用全局端点或其他组织的端点。

  • 检查GPG密钥有效性
    确保ascii-armor字段中的公钥是完整、有效的ASCII格式PGP公钥。可通过本地命令gpg --import --dry-run <(echo "你的公钥内容")验证格式是否合法。

  • 确认组织私有注册表状态
    需确保该组织已启用私有注册表功能,未启用则无法添加GPG密钥。可在组织设置的「Private Registry」页面查看状态。

内容的提问来源于stack exchange,提问作者Gratus D.

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.25 14:12:09