场景:我有一个拥有亚马逊帐户的用户。他们有一个他们想要在其上做广告的网站(亚马逊子公司)。他们已注册并注册了亚马逊产品广告API的帐户。他们有访问ID和访问权限,我可以成功使用他们的访问键来查找项目
但是我知道使用用户的访问令牌不是最佳做法,我已经让他们用我自己的访问密钥创建一个单独的用户,通过亚马逊的身份访问管理控制台创建。但是当我使用它们来查询Amazon时它返回的项目
“您的AccessKey ID未在Product Advertising API中注册。请使用在https://affiliate-program.amazon.com/gp/flex/advertising/api/sign-in.html注册后获得的AccessKey ID。”
是否无法使用IAM系统中的访问权限以某种方式链接到用户的注册帐户(已经可以访问Product API)?
注意:创建的用户在用户策略中获得了完全管理员权限,但亚马逊仍然要求用户accesskey id专门注册到产品广告API
答案 0 :(得分:1)
似乎与我刚刚花了两周时间完成的问题类似。亚马逊在API帐户的后面有一些奇怪的东西。
我怀疑您的问题(如果您还没有弄清楚)是您与Product API代码绑定的ID与Amazon为该ID激活的内容不匹配(反之亦然)。
我遇到了多帐户问题。
我的公司有2个帐户 - 自1998年以来我们拥有的印刷书籍寄售帐户(亚马逊优惠) - 网站展示广告和销售链接的广告帐户(亚马逊协会)
两个帐户的登录方式相同 - 但是在不同的网址上。没问题。
亚马逊为Web服务(API)登录提供了一个URL。他们不会检查您是否已经登录(就像我的广告帐户一样)。他们不保留当前登录;他们只是为AWS部分提供另一个单独的登录框。
这是什么造成了问题。
我使用凭据登录。我的仪表板显示我已注册API服务。我检索了Product API代码。他们没有工作。为什么?亚马逊与这些API代码相关联的帐户是我的Print book帐户。他们没有激活它以用于产品API /广告服务。 (尽管它显示为活跃的,但它不是......)
解决方案:
我更改了我的日志 - 手动分离帐户 - 一个用于广告/ AWS登录,一个用于我的打印书帐户。这两个帐户都处于活动状态,并且都显示为已注册的Product API服务,并且两者都显示正常。实际上,只有一个有效。
测试:
关闭所有浏览器后,我打开了AWS Login页面。这一次,我使用刚刚为广告帐户创建的新凭据登录。
我获得了产品API代码(与我的寄售帐户不同)。这些代码处于活动状态,并提供有效的API连接。
答案 1 :(得分:1)
我从aws forum得到答案,但它确实有效。
"所以,感谢内部传奇的帮助,找到了解决这个问题的解决方案。在AWS管理控制台中,导航到“安全凭证”和“安全凭证”。在你的名字下拉(https://console.aws.amazon.com/iam/home?#security_credential)下。在'访问键'您可以看到根访问密钥(分配给您使用Product Advertising API注册时创建的root用户的密钥)。如果你有2个,删除一个,然后生成一个新的。它将显示正确的AWS密钥和密钥。这些与适当的Associate Tag配对可以让您访问API。
我可能会传播谣言,但不相信你可以将IAM管理面板下的用户和群组挂钩到产品广告API中......"
答案 2 :(得分:0)
我遇到了完全相同的问题。我删除了有问题的帐户,转储了我的缓存。完全开始了。问题解决了。