我目前正在开发一个使用 Symfony2 开发的网站,我需要在 Amazon SQS 中发送消息。为了做到这一点,我添加到我的composer.json
:
"aws/aws-sdk-php": "2.4.*"
然后,当我尝试创建队列或列出队列时,出现 403 错误:
访问资源https://sqs.us-west-2.amazonaws.com/ https://sqs.us-west-2.amazonaws.com/被拒绝。
EDIT:添加了完整的错误消息
AWS 错误代码:AccessDenied,状态代码:403,AWS 请求 ID:
2fe34c11-7af8-5445-a768-070159a0953e,AWS 错误类型:客户端、AWS
错误消息:访问资源https://sqs.us-west-2.amazonaws.com/ https://sqs.us-west-2.amazonaws.com/被拒绝。,用户代理:
aws-sdk-php2/2.4.11 Guzzle/3.7.4 curl/7.25.0 PHP/5.4.3
这是我所做的示例代码:
$aws = Aws::factory(array(
'key' => 'my-key',
'secret' => 'my-secret',
'region' => 'us-west-2'
));
$sqs = $aws->get('sqs');
return new Response(var_dump($sqs->listQueues()));
我做错了什么会出现此错误?
经过挖掘,我发现我使用的帐户没有被授予访问 SQS 服务的权限。
要授予 SQS 访问帐户的权限,您必须访问亚马逊管理控制台。然后单击 IAM。在此部分下,单击“用户”,然后您可以管理您创建的每个帐户的权限。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)