web-dev-qa-db-ja.com

AWS SDKを介したSQSへのアクセスが拒否されました

現在、Symfony2で開発されたWebサイトで作業しており、Amazon SQSでメッセージを送信する必要があります。そのために、composer.jsonに追加しました:

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

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

リソースへのアクセス 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/ は拒否されました。ユーザーエージェント: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()));

このエラーを取得するにはどうすればいいですか?

25
SupaCoco

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

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

48
SupaCoco