tyt*_*ytk 7 spring apache-camel amazon-sqs amazon-web-services
我在AWS中设置了SQS队列.我可以使用AWS CLI和我设置的IAM凭据完美地发送和接收消息.
我想要做的是使用Camel从队列中消息,通过Spring配置.我尝试了这个例子,因为它非常明确并且重点:
https://github.com/christian-posta/camel-sqs-example
但是,我得到以下异常:
com.amazonaws.AmazonServiceException: Status Code: 403, AWS Service: AmazonSQS,
AWS Request ID: 115057f8-3c4f-5ec6-8fe9-18ea097b2730, AWS Error Code:
InvalidClientTokenId, AWS Error Message: The security token included in the
request is invalid.
Run Code Online (Sandbox Code Playgroud)
亚马逊提供了最无用的文档:
InvalidClientTokenId
我们的记录中不存在提供的X.509证书或AWS访问密钥ID.
HTTP状态代码:403
我已经仔细检查过我使用了与通过CLI使用的完全相同的IAM凭据,并且IAM用户具有允许对队列进行读/写访问的策略.我也跟周围发送额外的网址参数玩弄ACCESSKEY,秘密密钥,amazonSQSEndpoint和地区如骑骆驼记录.
为什么亚马逊说访问密钥无效或记录中不存在,我如何修复我的请求?
遇到这种情况时,有两种方法可以解决此问题。
选项 1:检查 ~/.aws/credentials 文件中的凭证,其中访问密钥和机密可能存在错误。犯这个错误的可能性非常小,但还是有可能发生。
选项 2:为 IAM 用户提供必要的权限,并检查问题是否重现。如果这是您自己的 AWS 账户,请务必付出AmazonSQSFullAccess并开展您的工作。从这个意义上说,您不会轻易遇到任何权限问题。另请检查此链接,其中提到用户使用 AWS SQS 所需的最低权限集。
由于响应的状态码是403(禁止),这肯定与授权有关。我知道我的答案会在两年后到来,但我曾经遇到过类似的问题,而且这很有效。
| 归档时间: |
|
| 查看次数: |
3613 次 |
| 最近记录: |