python - 尽管具有 LWA 访问和刷新令牌,但在进行 Amazon SP API 调用时出现 403 错误
问题描述
我已经完全按照官方开发者指南 ( https://github.com/amzn/ sell -partner-api-docs ) 进行操作,并且能够获得访问权和刷新令牌。我还设法使用 SHA256 散列算法正确签署每个请求。但是在尝试进行 API 调用之后,这是我得到的错误。
{
"errors": [
{
"message": "Access to requested resource is denied.",
"code": "Unauthorized",
"details": ""
}
]
}
附加到 IAM 角色的内联策略是:
{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "VisualEditor0",
"Effect": "Allow",
"Action": "sts:AssumeRole",
"Resource": "arn:aws:iam::310069193681:role/SellingPartner"
}
]
}
下面附上其他请求细节......
{
'Date': 'Mon, 12 Jul 2021 10:23:12 GMT',
'Content-Type': 'application/json',
'Content-Length': '141',
'Connection': 'keep-alive',
'x-amzn-RequestId': '8541dac4-e734-486b-820d-3010f447b055',
'x-amzn-ErrorType': 'AccessDeniedException',
'x-amz-apigw-id': 'CWiykGXFDoEF2Xw='
}
解决方案
我有一个类似的问题,对我来说,我没有提供应用程序所需的角色。
要让您的应用程序访问给定资源,您必须选择一些角色。为此,如果您使用的是新界面:
- 转到列出您的应用程序的页面
- 选择您的应用 -> 编辑
- 选择您需要的角色。您可以检查哪些角色是必需的
https://github.com/amzn/ sell-partner-api-docs/blob/main/guides/en-US/roles/Roles-in-the-Selling-Partner-API.md 一些角色是受限的——如果是这样的话您的情况,您可能需要更新您的开发者资料以请求它们。
推荐阅读
- javascript - 在 DomPurify 中允许 HTML 注释
- css - 如何将输入值内容左对齐而不是居中对齐?
- angular - 如何从服务器响应中提取 json 对象的第二层属性
- ios - Apple Map 和 MKLocalSearch 的搜索结果不同
- python - Python - 删除行和previos行(匹配模式模式)
- sql - 将我的 SQL 数据库备份还原到 Azure 后,我的所有索引都被禁用
- ios - 是否允许在我们的应用程序中使用苹果自己的应用程序图标?
- smtp - 需要 smtp 中继解决方案
- android - 在 EditText 上调用 setText() 时会发生什么?
- java - Spring boot 2:使用 Flyway 时检测到明显的连接泄漏