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

Node.js客户端调用Selling Partner API报AccessDenied错误如何解决

问题排查解决步骤

你遇到的报错核心是当前使用的IAM用户没有权限调用sts:AssumeRole接口扮演配置的SellingPartnerAPIRole角色,按以下步骤排查解决:

  • 首先修正IAM角色配置值
    你当前的AWS_SELLING_PARTNER_ROLE环境变量只填了角色名,必须替换为完整的IAM角色ARN,格式如下,可直接在AWS控制台IAM角色的详情页复制完整ARN:
arn:aws:iam::[你的AWS账号ID]:role/SellingPartnerAPIRole
  • 检查IAM用户的关联权限策略
    确保报错信息里arn:aws:iam::7xxxx9:user/XXX对应的IAM用户,绑定的权限策略包含以下权限配置:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Action": "sts:AssumeRole",
            "Resource": "arn:aws:iam::[你的AWS账号ID]:role/SellingPartnerAPIRole"
        }
    ]
}
  • 检查IAM角色的信任策略
    进入SellingPartnerAPIRole的详情页,切换到「信任关系」标签,确认信任策略允许你的AWS账户或对应IAM用户扮演该角色,参考配置:
{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::7xxxx9:user/XXX"
            },
            "Action": "sts:AssumeRole"
        }
    ]
}
  • 生效延迟说明
    IAM策略修改后通常有1-2分钟的延迟,修改完成后等待片刻再运行代码测试即可。

AssumeRole问题解决后如果调用接口仍有权限报错,再检查你在SP API开发者后台注册的应用是否已经申请开通了Product Pricing相关接口的访问权限即可。

内容的提问来源于stack exchange,提问作者Ionică Bizău

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 15:27:01