CloudFront とカスタムオリジン間の通信に HTTPS を必須にする - Amazon CloudFront

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

CloudFront とカスタムオリジン間の通信に HTTPS を必須にする

CloudFront とオリジン間の通信に HTTPS を要求できます。

注記

オリジンがウェブサイトエンドポイントとして設定されている Amazon S3 バケットである場合、Amazon S3 はウェブサイトエンドポイントの HTTPS をサポートしていないため、オリジンで HTTPS を使用する CloudFront ように を設定することはできません。

CloudFront とオリジンの間で HTTPS を必須にするには、このトピックの手順に従って次の操作を行います。

  1. ディストリビューションで、[Origin Protocol Policy] (オリジンプロトコルポリシー) 設定を変更します。

  2. オリジンサーバーに SSL/TLS 証明書をインストールします (Amazon S3 オリジン、または特定のその他の AWS オリジンを使用する場合は必要ありません)。

設定を変更する CloudFront

次の手順では、HTTPS CloudFront を使用して Elastic Load Balancing ロードバランサー、Amazon EC2 インスタンス、または別のカスタムオリジンと通信するように を設定する方法について説明します。 CloudFront API を使用してディストリビューションを更新する方法については、「Amazon CloudFront API リファレンス」のUpdateDistribution「」を参照してください。

CloudFront とカスタムオリジン間で HTTPS を必須 CloudFront とするように を設定するには
  1. にサインインAWS Management Consoleし、 で CloudFront コンソールを開きますhttps://console.aws.amazon.com/cloudfront/v4/home

  2. CloudFront コンソールの上部のペインで、更新するディストリビューションの ID を選択します。

  3. [Origins] タブで、更新するオリジンを選択し、[Edit] を選択します。

  4. 次の設定を更新します。

    オリジンプロトコルポリシー

    ディストリビューションの該当するオリジンで、[Origin Protocol Policy] を変更します。

    • HTTPS のみ — カスタムオリジンとの通信には HTTPS のみ CloudFront を使用します。

    • 一致ビューワー — CloudFront ビューワーリクエストのプロトコルに応じて、HTTP または HTTPS を使用してカスタムオリジンと通信します。例えば、オリジンプロトコルポリシー一致ビューワーを選択し、ビューワーが HTTPS を使用して にオブジェクトをリクエストする場合 CloudFront、 CloudFront は HTTPS を使用してリクエストをオリジンに転送します。

      [Viewer Protocol Policy] で [Redirect HTTP to HTTPS] または [HTTPS Only] を指定する場合は、[Match Viewer] のみを選択します。

      CloudFront ビューワーが HTTP プロトコルと HTTPS プロトコルの両方を使用してリクエストを行った場合でも、 はオブジェクトを 1 回だけキャッシュします。

    オリジン SSL プロトコル

    ディストリビューションの該当するオリジンで [Origin SSL Protocols] を選択します。SSLv3 プロトコルは安全性が低いため、オリジンが TLSv1 以降をサポートしていない場合にのみ SSLv3 を選択することをお勧めします。TLSv1 ハンドシェイクは SSLv3と互換性がありますが、TLSv1.1と TLSv1.2にはありません。SSLv3 を選択すると、 は SSLv3 ハンドシェイクリクエスト CloudFront のみを送信します。

  5. [Yes, Edit (はい、編集します)] を選択します。

  6. CloudFront とカスタムオリジンの間で HTTPS を要求する追加のオリジンごとに、ステップ 3~5 を繰り返します。

  7. 本番環境で更新された情報を使用する前に、次を確認してください。

    • ビューワーに HTTPS の使用が必要とされるリクエストにのみ、各キャッシュ動作のパスパターンが適用されている。

    • キャッシュ動作は、 CloudFront 評価する順序で一覧表示されます。詳細については、「パスパターン」を参照してください。

    • キャッシュ動作は、[Origin Protocol Policy] を変更したオリジンにリクエストをルーティングします。

カスタムオリジンへの SSL/TLS 証明書のインストール

SSL/TLS 証明書は、カスタムオリジンの次のソースから使用できます。

  • オリジンが Elastic Load Balancing ロードバランサーである場合は、AWS Certificate Manager (ACM) で提供された証明書を使用できます。信頼されたサードパーティー認証機関が署名して ACM にインポートされた証明書を使用することもできます。

  • Elastic Load Balancing ロードバランサー以外のオリジンの場合は、信頼されたサードパーティー認証機関 (CA) によって署名された証明書を使用する必要があります。例えば、Comodo、、DigiCertSymantec などです。

オリジンから返される証明書には、次のいずれかのドメイン名が含まれている必要があります。

  • オリジンのオリジンドメインフィールド ( CloudFront API の DomainNameフィールド) のドメイン名。

  • キャッシュ動作が Host ヘッダーをオリジンに転送するように設定されている場合は、Host ヘッダーのドメイン名。

が HTTPS CloudFront を使用してオリジンと通信する場合、 CloudFront は証明書が信頼できる認証機関によって発行されたことを確認します。 は Mozilla と同じ認証機関 CloudFront をサポートします。最新のリストは、「Mozilla に付属する CA 証明書一覧」を参照してください。 CloudFront とオリジン間の HTTPS 通信に自己署名証明書を使用することはできません。

重要

オリジンサーバーが期限切れの証明書、無効な証明書、または自己署名証明書を返した場合、またはオリジンサーバーが証明書チェーンを間違った順序で返した場合、 は TCP 接続を CloudFront ドロップし、ビューワーに HTTP ステータスコード 502 (Bad Gateway) を返し、 X-Cacheヘッダーを に設定しますError from cloudfront。また、中間証明書を含む証明書の完全なチェーンが存在しない場合、 は TCP 接続を CloudFront ドロップします。