7.2.4. 署名パラメータと派生コンポーネントを HTTP フィールドより選ぶ (Choosing Signature Parameters and Derived Components over HTTP Fields)
7.2.4. 署名パラメータと派生コンポーネントを HTTP フィールドより選ぶ (Choosing Signature Parameters and Derived Components over HTTP Fields)
一部の HTTP フィールドは, HTTP 署名パラメータや派生コンポーネントと類似した値や解釈を持つ. 多くの場合, フィールドではない側を署名する方が望ましい. 特に, アプリケーションが明示的に要求しない限り, 通常は次のフィールドを署名に含めるべきではない:
"date" Date ヘッダフィールドの値は HTTP メッセージのタイムスタンプを表す. しかし, 署名そのものの作成時刻は created 署名パラメータに符号化される. 署名と HTTP メッセージの作成および直列化の方法に応じて, この 2 つの値は異なり得る. 有効な時間窓で署名を処理するアプリケーションは, そのような計算には created 署名パラメータを用いるべきである. アプリケーションは, Date フィールドと created 署名パラメータとのずれをどれだけ許容するかに制限を設けることで, 生成された署名の別の HTTP メッセージへの適用を制限することもできる. 7.2.2 節および 7.2.1 節も参照のこと.
"host" Host ヘッダフィールドは HTTP/1.1 に特有であり, その機能は 2.2.3 節で定義される @authority 派生コンポーネントに包含される. 異なる HTTP バージョン間で値を保持するために, アプリケーションは常に @authority 派生コンポーネントを用いるべきである. 7.5.4 節も参照のこと.