しばやん雑記

ASP.NET とメイドさんが大好きなフリーランスのプログラマーのブログ

Azure CDN がカスタムドメインでの HTTPS に対応したので試してみた

ぶちぞう RD 曰く、6 年ぐらい待ったという Azure CDN のカスタムドメインでの HTTPS 対応を早速試しました。ドメイン承認プロセスがあるので、ちゃんとドキュメントには予め目を通しておきましょう。

前提条件として Azure CDN エンドポイントを作成して、カスタムドメインを追加しておく必要があります。わかりやすいように CDN エンドポイントが有効になるまで待った方が良さそうです。

カスタムドメインを追加すると、HTTPS を有効にする設定が出てきます。

f:id:shiba-yan:20170209231803p:plain

設定を On にして保存すると、ドメイン承認用のメールが admin@domain というアドレスに送信されます。最初はドキュメントをちゃんと読まなかったので、受信できないドメインを追加していました。

しばらくすると DigiCert からメールが届きます。載っているリンクをブラウザで開きます。

f:id:shiba-yan:20170209232244p:plain

リンク先は以下のような画面が表示されるので、名前を入力して送信します。

f:id:shiba-yan:20170209232103p:plain

ここまではよくある HTTPS 証明書の作成プロセスですね。ここまでくればポータルの表示が Enabling に変わって、Azure CDN 側で証明書の登録プロセスが走ります。

ドキュメントには証明書が反映されるまで 6-8 時間とありましたが、今回は 24 時間ほどかかりました。ありえないぐらい遅かったので、使う場合には注意する必要がありそうです。

f:id:shiba-yan:20170209232329p:plain

丸一日が経過した後、ようやく証明書が反映されました。無料で使えるのは結構ありがたいです。

f:id:shiba-yan:20170209231646p:plain

証明書を見ると、ちゃんと登録したカスタムドメインが追加されていることが分かります。

f:id:shiba-yan:20170209233012p:plain

待ち時間が許容できる場合には、証明書の発行や更新など全て無料で使えるので選択肢としてはありだと思います。秘密鍵の管理も要らないし、更新も自動で行われるみたいです。

Azure CDN Premium Verizon の場合は Rule Engine で URL Rewrite が使えるので、Blob Storage では使えないデフォルトドキュメントっぽいことを実現できます。

この Stack Overflow の回答が完璧だったので、実際に Rule を追加して試しています。

f:id:shiba-yan:20170209232742p:plain

Blob Storage を静的サイトとして使う場合にデフォルトドキュメントと HTTPS が課題になっていましたが、Azure CDN を被せることで両方とも一度に解決できます。

高い可用性を持つ静的な Web サイトとして運用する場合にはかなり良いと思いました。