40

私は現在、Symfony2 で開発されたウェブサイトに取り組んでおり、Amazon SQS でメッセージを送信する必要があります。それを行うために、私はに追加しましたcomposer.json

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

次に、キューを作成するか、キューをリストしようとすると、次のような 403 エラーが発生します。

リソースhttps://sqs.us-west-2.amazonaws.com/へのアクセスが拒否されました。

編集: 完全なエラーメッセージを追加

AWS エラー コード: AccessDenied、ステータス コード: 403、AWS リクエスト ID: 2fe34c11-7af8-5445-a768-070159a0953e、AWS エラー タイプ: クライアント、AWS エラー メッセージ: リソースへのアクセス 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()));

このエラーを取得するには何が間違っていますか?

4

3 に答える 3

70

掘り下げた後、使用していたアカウントに SQS サービスへのアクセスが許可されていないことがわかりました。

SQS にアカウントへのアクセスを許可するには、Amazon 管理コンソールに移動する必要があります。次に IAM をクリックします。このセクションで [ユーザー] をクリックすると、作成した各アカウントの権限を管理できます。

于 2013-12-03T15:41:08.503 に答える