Elastic Beanstalk インスタンスで実行中のアプリケーションから Amazon S3 バケットにアクセスする方法を教えてください。

最終更新日: 2020 年 3 月 19 日

AWS Elastic Beanstalk インスタンスで実行中のアプリケーションから Amazon Simple Storage Service (Amazon S3) バケットにアクセスするにはどうすればよいですか?

簡単な説明

Elastic Beanstalk から Amazon S3 にアクセスするには、AWS Identity and Access Management (IAM) インスタンスプロファイルが、Amazon S3 に対する適切なアクセス許可を持つ Amazon Elastic Compute Cloud (Amazon EC2) インスタンスに添付されていることを確認します。次に、S3 バケットポリシーに、インスタンスプロファイルに添付されたロールへのアクセスを拒否するポリシーがないことを確認します。

解決方法

インスタンスプロファイルのアクセス許可を検証する

  1. Elastic Beanstalk コンソールを開きます。
  2. 環境を選択します。
  3. ナビゲーションメニューから [Configuration] を選択します。
  4. Configuration overview セクションの [Category] 列の [Security] で、[Modify] を選択します。
  5. IAM instance profile メニューで、インスタンスプロファイルの名前を書き留めます。
  6. IAM コンソールを開きます。
  7. ナビゲーションペインで、[Roles] をクリックします。
  8. 検索ボックスに、ステップ 5 のインスタンスプロファイルの名前を入力します。
  9. ステップ 8 のロールに、アクセスするバケットに対して必要な Amazon S3 アクセス許可があることを確認します。

S3 バケットのアクセス許可を検証する

  1. Amazon S3 コンソールを開きます。
  2. バケットのリストから、変更したいバケットポリシーを持つバケットを選択します。
  3. [Permissions] タブをクリックします。
  4. [Bucket Policy] をクリックしします。
  5. "Effect": "Deny" を含むステートメントを検索します。
  6. バケットポリシーで、ロールへの IAM インスタンスプロファイルのアクセスを拒否している 「Effect」:「Deny」 ステートメントを編集または削除します。

S3 バケットへのアクセス

これで、S3 バケットにアクセスし、S3 バケットを使用して以下を行うことができます。

  1. アプリケーションバージョンを管理する
    注: アプリケーションを作成または更新するときは、必ず S3 URL を指定してください。
  2. アプリケーションファイルまたは写真を読み書きする。
    注: 詳細については、「AWS SDK、CLI、Explorer の使用」をご参照ください。

この記事はお役に立ちましたか?

改善できることはありますか?


さらにサポートが必要な場合