文档首页/ 智果(AgentArts)智能体平台/ 托管与运行智能体/ 常见问题/ 创建网关后调用报错:委托缺少CSMS/KMS相关action权限
更新时间:2026-09-22 GMT+08:00
分享

创建网关后调用报错:委托缺少CSMS/KMS相关action权限

问题描述

在调用网关过程中,返回报错缺少相关action策略,完整报错信息如下:

{
    "jsonrpc": "2.0",
    "id": 0,
    "error": {
        "code": -32603,
        "message": "send error: http upstream error: http request failed: outbound authentication failure: get api key failed, status code: 403 Forbidden, body: ErrorResponse { error_code: \"AgentIdentityTokenVault.1007\", error_msg: \"User: sts::xxx:assumed-agency:AgentArtsGatewayAgency/xxx is not authorized to perform: csms:secret:getVersion on resource: csms:regionId:xxx:secretName:apikeycredentialprovider-a452e54f because no identity-based policy allows the csms:secret:getVersion action.\" }"
    }
}

原因分析

网关实际运行在Agent的沙箱环境中,当网关需要访问其他云服务时,需要在创建网关时选择相关的委托(Agency),缺少相应权限时会报此错误。主要原因如下:

  1. 入站和出站身份认证:网关调用涉及入站和出站身份认证,该模块通过调用AgentIdentity实现。因此,创建网关时选择的委托中需要包含Identity调用相关策略,所需权限请参考创建委托并授权。
  2. 密钥凭据权限:csms:secret:getVersion和kms:cmk:decryptDataKey涉及密钥凭据权限,需自行补充。如果在调用场景中需要其他action,也可以自行加入。

解决方案

方案一:为已有委托补充CSMS权限

如果在网关创建时已选择AgentArtsGatewayAgency委托,可通过以下步骤补充授权:

  1. 进入统一身份认证服务 IAM,选择“委托”。
  2. 在委托列表选择AgentArtsGatewayAgency委托,单击操作列的“授权”。

  3. 在策略列表中搜索“CSMS”,选择CSMSReadOnlyPolicy策略(该策略包含csms:secret:getVersion和kms:cmk:decryptDataKey权限)。

  4. 单击“确定”完成授权。

方案二:创建自定义身份策略并关联委托

  1. 进入统一身份认证服务 IAM,选择“身份策略”。
  2. 单击“创建自定义身份策略”。

  3. 参考下图配置所需的action权限(如csms:secret:getVersion、kms:cmk:decryptDataKey等),然后单击“确定”。

    {
      "Version": "5.0",
      "Statement": [
        {
          "Effect": "Allow",
          "Action": [
            "csms:secret:getVersion",
            "kms:cmk:decryptDataKey"
          ]
        }
      ]
    }

  4. 在左侧菜单栏选择“委托”,在委托列表选择AgentArtsGatewayAgency委托,单击操作列的“授权”。
  5. 在策略列表中,选择3中创建的自定义策略。

  6. 单击“确定”完成授权后,即可在“基本信息 > 授权记录”中查看。

相关文档