Доступ запрещен к SQS через AWS SDK

В настоящее время я работаю над сайтом, разработанным с Symfony2, и мне нужно отправлять сообщения в SQS Amazon. Для этого я добавил в свой composer.json:

"aws/aws-sdk-php": "2.4.*"

Затем, когда я пытаюсь создать очереди или очереди списка, у меня есть ошибка 403:

Доступ к ресурсу https://sqs.us-west-2.amazonaws.com/ отклонен.

EDIT: добавлено полное сообщение об ошибке

AWS Код ошибки: AccessDenied, код состояния: 403, AWS Идентификатор запроса: 2fe34c11-7af8-5445-a768-070159a0953e, AWS Тип ошибки: клиент, AWS Сообщение об ошибке: доступ к ресурсу https://sqs.us-west-2.amazonaws.com/, User-Agent: 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()));

Что я делаю неправильно, чтобы получить эту ошибку?

Ответы

Ответ 1

После копания я обнаружил, что используемая вами учетная запись не была предоставлена ​​для доступа к службе SQS.

Чтобы предоставить SQS доступ к учетной записи, вы должны перейти на консоль управления Amazon. Затем нажмите IAM. В этом разделе нажмите "Пользователи", а затем вы сможете управлять разрешением для каждой созданной вами учетной записи.