チュートリアル:Azure CDN カスタム ドメインで HTTPS を構成する

このチュートリアルでは、Azure CDN エンドポイントに関連付けられたカスタム ドメインの HTTPS プロトコルを有効にする方法について説明します。

カスタム ドメイン (例: https://www.contoso.com) に HTTPS プロトコルを使うと、機密データが TLS/SSL でセキュリティ保護されて配信されます。 Web ブラウザーは、HTTPS 経由で接続されている場合、Web サイトの証明書を検証します。 ブラウザーはそれが正当な証明機関によって発行されていることを確認します。 このプロセスによりセキュリティを確保し、Web アプリケーションを攻撃から保護します。

既定では、Azure CDN は、CDN エンドポイント ホスト名で HTTPS をサポートしています。 たとえば、CDN エンドポイント (例: https://contoso.azureedge.net) を作成すると、既定で HTTPS が有効になります。

カスタム HTTPS の機能の主な特性は次のとおりです。

  • 追加コストなし: 証明書の取得または更新のコストや、HTTPS トラフィックの追加コストが発生しません。 CDN からの GB 送信のみ課金されます。

  • シンプルな有効化: Azure portal からワン クリックのプロビジョニングを利用できます。 REST API やその他の開発者ツールを使用して機能を有効にすることもできます。

  • 証明書の完全な管理:

    • すべての証明書の調達と管理がユーザーに代わって実施されます。
    • 証明書は自動的にプロビジョニングされ、有効期限が切れる前に更新されます。

このチュートリアルでは、以下の内容を学習します。

  • カスタム ドメインで HTTPS プロトコルを有効にする。
  • CDN で管理された証明書を使用する
  • 独自の証明書を使用する
  • ドメインを検証する
  • カスタム ドメインで HTTPS プロトコルを無効にする。

前提条件

Note

Azure を操作するには、Azure Az PowerShell モジュールを使用することをお勧めします。 作業を開始するには、Azure PowerShell のインストールに関する記事を参照してください。 Az PowerShell モジュールに移行する方法については、「AzureRM から Az への Azure PowerShell の移行」を参照してください。

このチュートリアルの手順を完了するには、最初に CDN プロファイルと少なくとも 1 つの CDN エンドポイントを作成しておいてください。 詳細については、「クイック スタート: Azure CDN プロファイルとエンドポイントの作成」を参照してください。

CDN エンドポイントに Azure CDN カスタム ドメインを関連付けます。 詳細については、「チュートリアル:カスタム ドメインを Azure CDN エンドポイントに追加します

重要

CDN マネージド証明書は、ルートまたは頂点のドメインには使用できません。 Azure CDN カスタム ドメインがルートまたは頂点のドメインの場合、独自の証明書の持ち込み機能を使用する必要があります。


TLS/SSL 証明書

Azure CDN カスタム ドメインで HTTPS を有効にするには、TLS/SSL 証明書を使用します。 Azure CDN で管理された証明書と独自の証明書のどちらを使用するかを選択できます。

Azure CDN は、調達や更新などの証明書管理タスクを処理します。 この機能を有効にすると、プロセスがすぐに開始します。

カスタム ドメインが既に CDN エンドポイントにマップされている場合、これ以上のアクションは必要ありません。 Azure CDN で手順が処理され、要求は自動的に完了します。

カスタム ドメインが別の場所でマップされている場合は、メールを使用してドメインの所有権を検証します。

カスタム ドメインで HTTPS を有効にするには、次の手順のようにします。

  1. Azure portal に移動し、Azure CDN によって管理されている証明書を検索します。 CDN のプロファイルを検索して選択します。

  2. 自分のプロファイルを選択します。

    • Azure CDN Standard from Microsoft
    • Azure CDN Standard from Edgio
    • Azure CDN Premium from Edgio
  3. CDN エンドポイントの一覧で、カスタム ドメインが含まれているエンドポイントを選択します。

    エンドポイントの一覧

    [エンドポイント] ページが表示されます。

  4. カスタム ドメインの一覧で、HTTPS を有効にするカスタム ドメインを選択します。

    自分の証明書を使用するオプションを含んだ [カスタム ドメイン] ページを示すスクリーンショット。

    [カスタム ドメイン] ページが表示されます。

  5. [証明書の管理の種類] で、 [CDN 管理] を選択します。

  6. [オン] を選択して HTTPS を有効にします。

    カスタム ドメイン HTTPS ステータス

  7. ドメインを検証する」に進みます。

ドメインを検証する

CNAME レコードでカスタム エンドポイントにマップされた使用中のカスタム ドメインがある場合、または独自の証明書を使用している場合には、Content Delivery Network エンドポイントにマップされているカスタム ドメインに関するセクションに進んでください。

そうではなく、エンドポイントの CNAME レコード エントリがもう存在しない場合、またはそこに cdnverify サブドメインが含まれている場合は、「カスタム ドメインが CDN エンドポイントにマップされていない」に進んでください。

カスタム ドメインが CNAME レコードによって CDN エンドポイントにマップされている

カスタム ドメインをエンドポイントに追加するときに、CDN エンドポイントのホスト名にマッピングする CNAME レコードを DNS ドメイン レジストラーに作成しました。

この CNAME レコードがまだ存在し、そこに cdnverify サブドメインが含まれていない場合は、DigiCert CA は、これを使用して自動でカスタム ドメインの所有権を検証します。

独自の証明書を使用している場合には、ドメインの検証は必要ありません。

CNAME レコードは、次の形式にする必要があります。

  • "名前" はカスタム ドメイン名です。
  • "" はコンテンツ配信ネットワーク エンドポイントのホスト名です。
名前 Type
<www.contoso.com> CNAME contoso.azureedge.net

CNAME レコードの詳細については、CNAME DNS レコードの作成に関するセクションを参照してください。

CNAME レコードが正しい形式である場合、DigiCert は自動的にそのカスタム ドメイン名を検証し、ご利用のドメインに使用する証明書を作成します。 DigiCert から検証電子メールが送信されないため、要求を承認する必要はありません。 この証明書は 1 年間有効で、有効期限が切れる前に自動更新されます。 「伝達を待機する」に進んでください。

自動検証には通常、数時間かかります。 24 時間以内にドメインが確認されない場合は、サポート チケットを開いてください。

Note

DNS プロバイダーに Certificate Authority Authorization (CAA) レコードがある場合、承認に適切な CA が含まれている必要があります。 DigiCert は、Microsoft および Edgio プロファイルの CA です。 CAA レコードの管理の詳細については、「Manage CAA records」 (CAA レコードの管理) を参照してください。 CAA レコード ツールについては、「CAA Record Helper」(CAA レコード ヘルパー) をご覧ください。

カスタム ドメインが CDN エンドポイントにマップされていない

CNAME レコード エントリに cdnverify サブドメインが含まれている場合は、この手順の残りの部分に従ってください。

DigiCert は、次のメール アドレスに確認メールを送信します。 次のアドレスのいずれかから直接承認できることを確認してください。

  • admin@your-domain-name.com
  • administrator@your-domain-name.com
  • webmaster@your-domain-name.com
  • hostmaster@your-domain-name.com
  • postmaster@your-domain-name.com

数分以内に、要求の承認を求めるメールを受け取ります。 スパム フィルターを使っている場合は、verification@digicert.com をその許可リストに追加してください。 24 時間以内にメールが届かない場合は、Microsoft のサポートに問い合わせてください。

ドメイン検証メール

承認リンクを選択すると、次のオンライン承認フォームが表示されます。

ドメイン検証フォーム

フォームの指示に従います。2 つの検証オプションがあります。

  • contoso.com などの同じルート ドメインに対して同じアカウントを使って、今後行われるすべての依頼を承認することができます。 同じルート ドメインの他のカスタム ドメインを追加する予定の場合は、このアプローチを使用することをお勧めします。

  • この要求で使われる特定のホスト名のみを承認できます。 その後の要求では追加の承認が必要になります。

承認後、カスタム ドメイン名に使用される証明書の作成が完了します。 この証明書は 1 年間有効で、有効期限が切れる前に自動更新されます。

伝達を待機する

ドメイン名の検証後、カスタム ドメインの HTTPS 機能がアクティブになるまでに最大 6 ~ 8 時間がかかります。 プロセスが完了したら、Azure portal の [カスタム HTTPS] の状態が [有効] に変更されます。 [カスタム ドメイン] ダイアログの 4 つの操作ステップが完了とマークされます。 カスタム ドメインは、HTTPS を使う準備ができました。

HTTPS ダイアログを有効にする

操作の進行

次の表は、HTTPS を有効にするときの操作の進行を示したものです。 HTTPS を有効にした後、[カスタム ドメイン] ダイアログには 4 つの操作ステップが表示されます。 各ステップがアクティブになると、進行状況に合わせてステップの下に他のサブステップの詳細が表示されます。 これらのサブステップのすべてが発生するわけではありません。 ステップが正常に完了すると、横に緑色のチェック マークが表示されます。

操作ステップ 操作サブステップの詳細
1 要求の送信 要求を送信しています
HTTPS 要求を送信しています。
HTTPS 要求を正常に送信しました。
2 ドメインの検証 CNAME で CDN エンドポイントにマップされている場合、ドメインは自動的に検証されます。 そうでない場合、ドメインの登録レコードにリストされているメール アドレス (WHOIS 登録者) に、確認要求が送信されます。
ドメインの所有権が正常に検証されました。
ドメインの所有権の検証要求が期限切れになりました (お客様から 6 日以内に返答がなかったようです)。 ドメインで HTTPS が有効になることはありません。 *
ドメインの所有権の検証要求が、お客様により拒否されました。 ドメインで HTTPS が有効になることはありません。 *
3 証明書のプロビジョニング 証明機関は現在、ドメインで HTTPS を有効にする際に必要な証明書の発行処理を進めています。
証明書の発行が完了しました。現在、証明書を CDN ネットワークにデプロイしています。 これには最大 6 時間かかることがあります。
CDN ネットワークに証明書をデプロイしました。
4 完了 ドメインで HTTPS を有効にしました。

* このメッセージは、エラーが発生しない限り表示されません。

要求送信前にエラーが発生した場合は、次のエラー メッセージが表示されます。

We encountered an unexpected error while processing your HTTPS request. Please try again and contact support if the issue persists.

リソースのクリーンアップ - HTTPS を無効にする

このセクションでは、カスタム ドメインの HTTPS を有効にする方法について説明します。

HTTPS 機能を無効にする

  1. Azure portal で、CDN のプロファイルを検索して選択します。

  2. お使いの Azure CDN Standard from MicrosoftAzure CDN Standard from Edgio、または Azure CDN Premium from Edgio プロファイルを選択します。

  3. エンドポイントの一覧で、カスタム ドメインを含むエンドポイントをクリックします。

  4. HTTPS を無効にするカスタム ドメインを選択します。

    カスタム ドメイン リスト

  5. [オフ] を選択して HTTPS を無効にした後、 [適用] を選択します。

    カスタム HTTPS ダイアログ

伝達を待機する

カスタム ドメインの HTTPS 機能を無効にした後、適用されるまでには最大 6 から 8 時間かかります。 プロセスが完了したら、Azure portal の [カスタム HTTPS] の状態が [無効] に変更されます。 [カスタム ドメイン] ダイアログの 3 つの操作ステップが完了とマークされます。 カスタム ドメインは HTTPS を使うことができなくなります。

[HTTPS の無効化] ダイアログ

操作の進行

次の表は、HTTPS を無効にするときの操作の進行を示したものです。 HTTPS を無効にした後、[カスタム ドメイン] ダイアログには 3 つの操作ステップが表示されます。 1 つのステップがアクティブになると、ステップの下に詳細が表示されます。 ステップが正常に完了すると、横に緑色のチェック マークが表示されます。

操作の進行 操作の詳細
1 要求の送信 要求を送信しています
2 証明書のプロビジョニング解除 証明書を削除しています
3 完了 証明書が削除されました

Edgio からの Azure CDN を使った証明書の自動ローテーション

Azure Key Vault のマネージド証明書は証明書の自動ローテーション機能を利用できるため、更新された証明書を Edgio からの Azure CDN で自動的に取得し、Edgio CDN プラットフォームに伝達できます。 この機能を有効にするには:

  1. Azure CDN を Microsoft Entra ID 内のアプリケーションとして登録します。

  2. Azure CDN サービスが自分のキー コンテナー内のシークレットにアクセスすることを認可します。 キー コンテナー内の [アクセス ポリシー] に移動して新しいポリシーを追加し、Microsoft.AzureFrontDoor-Cdn サービス プリンシパルに [シークレットの取得] アクセス許可を付与します。

  3. [カスタム ドメイン] メニュー内の [証明書の管理の種類] で証明書のバージョンを [最新] に設定します。 特定のバージョンの証明書を選んだ場合は、手動で更新する必要があります。

Note

  • 証明書の自動ローテーションによって新しい証明書の伝達が完全に完了するまでに最長 24 時間かかる場合があることに注意してください。
  • 複数のカスタム ドメインに対応するために 1 つの証明書が利用されている場合、正しい動作を保証するために、この証明書を共有するすべてのカスタム ドメインで証明書の自動ローテーションを有効にする必要があります。 そうしないと、この機能が有効になっていないカスタム ドメインに対して Edgio プラットフォームが間違ったバージョンの証明書を提供する可能性があります。"

よく寄せられる質問

  1. 証明書プロバイダーはだれですか。どのような種類の証明書が使用されますか。

    次の場合、カスタム ドメインには、DigiCert によって提供される専用の証明書が使用されます。

    • Azure Content Delivery Network from Edgio
    • Azure Content Delivery Network from Microsoft
  2. IP ベースまたは Server Name Indication (SNI) TLS/SSL を使用していますか?

    Azure CDN from EdgioAzure CDN Standard from Microsoft のどちらも、SNI TLS/SSL が使用されます。

  3. DigiCert からドメインの検証電子メールが送られて来ない場合はどうすればよいでしょうか。

    cdnverify サブドメインを使用しておらず、CNAME エントリがエンドポイントのホスト名の場合、ドメインの検証メールが送られてくることはありません。

    検証は自動的に行われます。 そうではなく、CNAME エントリがないうえに 24 時間以内にメールが届かなかった場合、Microsoft のサポートに問い合わせてください。

  4. SAN 証明書を使用すると専用証明書の場合よりも安全性が低くなるでしょうか。

    SAN 証明書は、専用証明書と同じ暗号化およびセキュリティ標準に従っています。 発行されるすべての TLS/SSL 証明書には、サーバーのセキュリティを強化するために SHA-256 が使用されます。

  5. DNS プロバイダーに Certificate Authority Authorization レコードが必要ですか。

    現在、Certificate Authority Authorization レコードは必要ありません。 ただし、所持している場合は、そこには有効な CA として DigiCert が含められている必要があります。

  6. 2018 年 6 月 20 日以降、Edgio の Azure CDN で、SNI TLS/SSL による専用証明書が既定で使用されます。 SAN (Subject Alternative Name: サブジェクトの別名) 証明書と IP ベースの TLS/SSL を使用している既存のカスタム ドメインはどうなるのでしょうか。

    Microsoft の分析の結果、アプリケーションに対する要求が SNI クライアント要求だけであることがわかった場合、既にあるドメインは今後数か月内に単一の証明書へと徐々に移行されます。

    非 SNI クライアントが検出された場合、ドメインは SAN 証明書と IP ベースの TLS/SSL のままになります。 SNI 非対応のサービスやクライアントに対する要求には影響ありません。

  7. 証明書の更新では、独自の証明書の持ち込みをどのように処理しますか。

    POP インフラストラクチャに新しい証明書がデプロイされるようにするには、新しい証明書を Azure Key Vault にアップロードします。 Azure Content Delivery Network の TLS 設定で、最新のバージョンの証明書を選択し、[保存] を選択してください。 Azure Content Delivery Network によって、新しい更新された証明書が反映されます。

    Azure CDN from Edgio プロファイルで、複数のカスタム ドメイン (ワイルドカード証明書など) に同じ Azure Key Vault 証明書を使用する場合は、同じ証明書を使用するすべてのカスタム ドメインを新しい証明書バージョンに更新してください。

次のステップ

このチュートリアルでは、以下の内容を学習しました。

  • カスタム ドメインで HTTPS プロトコルを有効にする。
  • CDN で管理された証明書を使用する
  • 独自の証明書を使用する
  • ドメインを検証する。
  • カスタム ドメインで HTTPS プロトコルを無効にする。

次のチュートリアルに進み、CDN エンドポイントでキャッシュを構成する方法を学習してください。