メインコンテンツまでスキップ

5. HSTS Mechanism Overview (HSTSメカニズム概要)

本セクションでは、HSTSホストがそのHSTSポリシーをUAに伝達する方法、およびUAがHSTSホストから受信したHSTSポリシーを処理する方法のメカニズムの概要を説明する。メカニズムの詳細はセクション6からセクション15で規定されている。

5.1 HSTS Host Declaration (HSTSホスト宣言)

HTTPホストは、Strict-Transport-Security HTTPレスポンスヘッダーフィールドで表され、セキュアなトランスポート (例えば、TLS) を介して伝達されるHSTSポリシーをUAに発行することにより、自身をHSTSホストとして宣言する。準拠するUAがこのヘッダーフィールドをエラーなく受信および処理した後、UAはそのホストを既知のHSTSホスト (Known HSTS Host) として扱う。

5.2. HSTS Policy (HSTSポリシー)

HSTSポリシーは、UAがセキュアなトランスポートを介してのみ既知のHSTSホストと通信することを指示し、ポリシーの保持期間を指定する。

HSTSポリシーは、URI参照、ユーザー入力 (例えば、"ロケーションバー"経由)、またはその他の情報に対するUAの処理を明示的に上書きし、これらはHSTSポリシーがない場合、UAが既知のHSTSホストと安全でない通信を行う原因となる可能性がある。

HSTSポリシーには、オプションのディレクティブ -- includeSubDomains -- を含めることができ、このHSTSポリシーは既知のHSTSホストのドメイン名のサブドメインであるドメイン名を持つ任意のホストにも適用されることを指定する。

5.3. HSTS Policy Storage and Maintenance by User Agents (UAによるHSTSポリシーの保存と維持)

UAは、発行したHSTSホストのドメイン名のみに基づいてHSTSポリシーを保存およびインデックス化する。

これは、UAが任意の特定のHSTSホストのHSTSポリシーを、ドメイン名が特定のHSTSホストのドメイン名の親ドメインまたはサブドメインである他のHSTSホストによって発行された任意のHSTSポリシーとは別に維持することを意味する。特定のHSTSホストのみが、発行したHSTSポリシーを更新または削除することができる。これは、ポリシーの時間持続期間とサブドメイン適用性の新しい値を持つStrict-Transport-Security HTTPレスポンスヘッダーフィールドをUAに送信することによって実現される。したがって、UAはHSTSホストに代わって"最新の" HSTSポリシー情報をキャッシュする。ゼロの時間持続期間を指定することは、そのHSTSホストのHSTSポリシー (主張されたincludeSubDomainsディレクティブを含む) を削除するようUAに通知する。詳細については、セクション8.1 ("Strict-Transport-Security Response Header Field Processing") を参照。さらに、セクション6.2ではStrict-Transport-Security HTTPレスポンスヘッダーフィールドの例を紹介している。

5.4. User Agent HSTS Policy Enforcement (ユーザーエージェントによるHSTSポリシーの実施)

特定のホストへのHTTP接続が確立される場合、トリガーされた方法に関係なく、UAは既知のHSTSホストキャッシュをチェックして、ドメイン名が特定のホストのドメイン名の親ドメインであるホストがあるかどうかを確認する。見つかった場合、そのいずれかがincludeSubDomainsディレクティブを主張している場合、HSTSポリシーは特定のホストに適用される。それ以外の場合、特定のホスト自体がUAによってHSTSホストとして既知である場合にのみ、HSTSポリシーは特定のホストに適用される。詳細については、セクション8.3 ("URI Loading and Port Mapping") を参照。