HTTP Strict Transport Security (HSTS) は、CDN ドメインをダウングレード攻撃から保護します。ダウングレード攻撃では、攻撃者が最初の HTTP 接続を傍受し、ブラウザーが HTTPS にアップグレードする前にトラフィックを悪意のあるサーバーにリダイレクトします。 有効にすると、HSTS はブラウザーに以下を指示します:
平文の HTTP 接続を拒否し、以降のすべてのリクエストで HTTPS の使用を強制する
ユーザーが SSL 証明書の警告をバイパスするのをブロックする
前提条件
開始する前に、以下をご確認ください:
高速化ドメイン名に SSL 証明書が設定されていること。 詳細については、「SSL 証明書の設定」をご参照ください。
仕組み
ブラウザーが初めて HTTPS 経由で POP (Point of Presence) に接続すると、POP は Strict-Transport-Security レスポンスヘッダーを返します。 その後、ブラウザーはヘッダーの TTL が期限切れになるまで、そのドメインへの接続を HTTPS のみに強制します。
ヘッダーの形式は次のとおりです:
Strict-Transport-Security: max-age=<seconds> [;includeSubDomains] [;preload]| パラメーター | 必須 | 説明 |
|---|---|---|
max-age | はい | ブラウザーが HTTPS 接続のみを強制する期間 (秒単位)。 |
includeSubDomains | いいえ | HSTS ポリシーを高速化ドメイン名のすべてのサブドメインに適用。 |
preload | いいえ | ドメインをブラウザーの組み込み HSTS プリロードリストに追加。 |
ブラウザーに HSTS が同期される前の最初の HTTP リクエストでは、POP は HTTPS への HTTP 301 リダイレクトを返します。 これにより、最初の接続時のセキュリティリスクを防ぎます。
制限事項
HSTS を有効にする前に、以下の点をご確認ください:
HSTS はドメイン名にのみ適用され、IP アドレスには適用されません。
HSTS と同時に HTTP への URL リダイレクトを設定しないでください。 ブラウザーがドメインにアクセスできなくなります。
[Include Subdomains] を有効にする前に、すべてのサブドメインで HTTPS が有効になっていることを確認してください。 HTTPS が有効になっていないサブドメインがあると、ポリシーが有効になった後、そのサブドメインにアクセスできなくなります。
HSTS を無効にしても、クライアントにはすぐには反映されません。 更新されたポリシーは、各ブラウザーの次の HTTPS リクエスト時に配信されます。
HSTS の有効化
CDN コンソールにログインします。
左側メニューで、[ドメイン名] をクリックします。
対象のドメイン名を見つけ、[操作] 列の [管理] をクリックします。
ドメインのナビゲーションペインで、[HTTPS] をクリックします。
[HSTS] セクションで、[変更] をクリックします。
[HSTSの設定] ダイアログボックスで [HSTS] をオンにし、次のパラメーターを設定します:
パラメーター 説明 [有効期間] ブラウザーがキャッシュする HSTS ヘッダーの TTL (日数)。 [60] 日に設定します。 HSTS を無効にするには [0] に設定します。 [サブドメインを含める] HSTS ポリシーをすべてのサブドメインに適用します。 すべてのサブドメインで HTTPS が有効であることを確認した後にのみ有効にしてください。 [OK] をクリックします。
HSTS の無効化
HSTS を無効にするには、[HSTSの設定] ダイアログボックスで [有効期間] を 0 に設定し、[OK] をクリックします。 ブラウザーは、POP への次の HTTPS リクエスト時に更新されたポリシーを適用します。