Cross-Origin Resource Sharing(CORS)の設定

S3バケットとバケット内のオブジェクトに他のドメインにあるWebアプリケーションからアクセスできるようにする必要がある場合は、そのバケットにCross-Origin Resource Sharing(CORS)を設定できます。

開始する前に

タスク概要

Cross-Origin Resource Sharing(CORS)は、あるドメインのクライアントWebアプリケーションが別のドメインのリソースにアクセスできるようにするセキュリティ機能です。たとえば、Imagesという名前のS3バケットを使用してグラフィックを格納するとします。Imagesバケットに対してCORSを設定することで、そのバケット内の画像をWebサイトhttp://www.example.comに表示できます。

手順

  1. CORSを有効にするために必要なXMLをテキスト エディタで作成します。

    次の例は、S3バケットのCORSを有効にするために使用されるXMLを示しています。このXMLでは、すべてのドメインにバケットへのGET要求の送信が許可されていますが、POST要求とDELETE要求が許可されているのはhttp://www.example.comドメインのみです。要求ヘッダーはすべて許可されます。

    <CORSConfiguration
        xmlns="http://s3.amazonaws.com/doc/2006-03-01/">
        <CORSRule>
            <AllowedOrigin>*</AllowedOrigin>
            <AllowedMethod>GET</AllowedMethod>
            <AllowedHeader>*</AllowedHeader>
        </CORSRule>
        <CORSRule>
            <AllowedOrigin>http://www.example.com</AllowedOrigin>
            <AllowedMethod>GET</AllowedMethod>
            <AllowedMethod>POST</AllowedMethod>
            <AllowedMethod>DELETE</AllowedMethod>
            <AllowedHeader>*</AllowedHeader>
        </CORSRule>   
    </CORSConfiguration>
    CORS設定XMLの詳細については、Amazon Web Services(AWS)ドキュメント『Amazon Simple Storage Service Developer Guide』を参照してください。
  2. Tenant Managerで、[S3] > [Buckets]に移動します。
  3. バケットをリストから選択し、[Configure CORS]をクリックします。
  4. CORS設定XMLをテキスト ボックスに貼り付けて、[Save]をクリックします。

    CORS設定XMLを示すスクリーンショット
  5. バケットのCORS設定を変更するには、テキスト ボックスでCORS設定XMLを更新し、[Save]をクリックします。
  6. バケットのCORS設定を無効にするには、テキスト ボックスからCORS設定XMLを削除し、[Save]をクリックします。