Cross−Origin Resource Sharing (CORS) の設定
Cross−Origin Resource Sharing (CORS) は、特定のドメインにロードされたクライアントウェブアプリケーションが異なるドメイン内のリソースと通信する方法を定義します。Amazon S3 の CORS のサポートによって、Amazon S3 でリッチなクライアント側ウェブアプリケーションを構築し、Amazon S3 リソースへのクロスオリジンアクセスを選択的に許可できます。
このセクションでは、Amazon S3 コンソール、Amazon S3 REST API、および AWS SDK を使用して CORS を有効にする方法について説明します。クロスオリジンリクエストを許可するようバケットを設定するには、CORS 設定をバケットに追加します。CORS 設定は、バケットへのアクセスを許可するオリジン、各オリジンでサポートされるオペレーション (HTTP メソッド)、およびその他のオペレーション固有情報を識別するルールを定義するドキュメントです。S3 コンソールでは、CORS 設定は JSON ドキュメントである必要があります。
JSON および XML での CORS 設定の例については、CORS 設定のエレメント を参照してください。
このセクションでは、Amazon S3 コンソールを使用して Cross−Origin Resource Sharing (CORS) 設定を S3 バケットに追加する方法について説明します。
バケットで CORS を有効にすると、アクセスコントロールリスト (ACL) およびその他のアクセス許可ポリシーが引き続き適用されます。
重要
S3 コンソールでは、CORS 設定は JSON である必要があります。JSON および XML での CORS 設定の例については、CORS 設定のエレメント を参照してください。
CORS 設定を S3 バケットに追加するには
AWS Management Console にサインインし、Amazon S3 コンソール (https://console.aws.amazon.com/s3/
) を開きます。 -
左のナビゲーションペインで、[汎用バケット] を選択します。
-
バケットリストで、バケットポリシーを作成するバケットの名前を選択します。
-
[Permissions] を選択します。
-
[CORS (クロスオリジンリソース共有)] セクションで、[編集] を選択します。
-
[CORS configuration editor (CORS 構成エディタ)] テキストボックスに、新しい CORS 設定を入力またはコピーして貼り付けるか、既存の設定を編集します。
CORS 設定は JSON ファイルです。エディタに入力するテキストは有効な JSON である必要があります。詳細については、CORS 設定のエレメント を参照してください。
-
[Save changes] (変更の保存) をクリックします。
注記
Amazon S3 では、[CORS configuration editor (CORS 構成エディタ)] のタイトルの横に、バケットの Amazon リソースネーム (ARN) が表示されます。ARN の詳細については、Amazon Web Services 全般のリファレンス の「Amazon リソースネーム (ARN) および AWS サービスの名前空間」を参照してください。
AWS SDK を使用して、バケットの Cross−Origin Resource Sharing (CORS) を管理できます。CORS の詳細については、Cross−Origin Resource Sharing (CORS) の使用 を参照してください。
以下の例を参照してください。
-
CORS 設定を作成し、バケット上で設定を指定する
-
設定を取得し、ルールを追加してその設定を変更する
-
変更された設定をバケットに追加する
-
設定を削除する
バケットで CORS 設定を指定するには、AWS Management Consoleを使用できます。必要に応じて、REST リクエストを直接送信することもできます。Amazon Simple Storage Service API リファレンスの以下のセクションでは、CORS 設定に関連する REST API アクションについて説明しています。