コンテンツにスキップ

Azure Storage Static Web Hosting アプリケーションでの Cloudflare SSL の有効化

概要

Static Web Hosting は、Azure ストレージコンテナが静的コンテンツを直接提供できるようにします。しかし、現在の Azure Static Web Hosting テクノロジースタックは、特定の URL に対して SSL をサポートしていません。たとえば、foo.com が Static Web Hosting を使用しているドメインである場合、https://www.foo.com および https://foo.com へのトラフィックは SSL を使用できません。しかし、Cloudflare を介して Static Web Hosting アプリケーションをプロキシすることで、これらの URL に対して SSL を有効にすることができます。

Static Web Hosting は、次の URL で https を有効にします。たとえば、foo.com がドメインである場合:

https://<<account>>.blob.core.windows.net/
https://<<account>>.<<foo.com>>.web.core.windows.net

Static Web Hosting のカスタムドメイン foo.com は、別の CNAME を指す CNAME を使用して、*.blob, *.web URL を利用します。その CNAME は、Azure ストレージアカウントの FE プールの A レコード である別の CNAME に解決されます。この構成を明確にするために、次の例を参照してください:

storage.foo.com CNAME foo.blob.core.windows.net
foo.blob.core.windows.net CNAME blob.exampleprdstr01.store.core.windows.net
blob.exampleprdstr01.store.core.windows.net A 13.78.152.64

Static Web Hosting アプリケーションから Cloudflare へのトラフィックをルーティングして、Cloudflare SSL を有効にします:

Browser <—SSL—> Cloudflare Proxy <—SSL—> Static Web Hosting

Cloudflare アカウントを設定する から始めましょう。


Cloudflare アカウントを作成する

カスタムドメインで SSL を受け取るには:

1. 新しい Cloudflare アカウントを作成するか、既存のアカウントを使用します。

2. Add Your Site の下にカスタムドメインの名前を入力します。

3. Cloudflare は、ドメインに登録されている DNS レコードを取得するために、権威 DNS サーバーにクエリを送信します。


プランを選択する

ドメインのために Free、Pro、または Business プランを選択します。Free または Pro を選択した場合、Cloudflare はブラウザと Cloudflare プロキシ間の通信のために SSL 証明書を生成します。独自の SSL 証明書を Cloudflare にアップロードしたい場合は、Business プランを選択してください。


DNS メソッドを選択する

Cloudflare に権威 DNS を提供させたい場合は、ドメインのために提供された Cloudflare ネームサーバーを使用し、ドメインレジストラの DNS マネージャーに配置します。

CNAME メソッドを使用する には、追加の手順に従う必要があります。


SSL メソッドを選択する

Cloudflare アカウントにログインしたら、Overview タブの SSL/TLS アプリを選択します。デフォルトの SSL 設定は Flexible SSL ですが、他の SSL オプション もあります。

DNS 設定は、クライアントのブラウザを含むインターネット全体のさまざまな場所にキャッシュされるため、SSL 設定の変更が伝播し、期待通りに機能するまでに時間がかかることがあります。

CF と Azure の間で HTTPS 接続を希望する場合、blob 自体に有効な SSL 証明書をインストールする必要があります。これは Azure でデフォルトで有効になっているため、クライアント、Cloudflare、および Azure の間の暗号化を確保するために、すぐに SSL 設定を Full または Full (strict) に変更できます。


関連リソース