リソース · 63

HTTPキャッシング:パーソナライズされた応答の保護

共有キャッシュ、プライベートキャッシュ、アプリケーションキャッシュを分離し、アクセス権限変更後にキー、再検証、無効化を検査します。

更新済み · 4 min

このガイドが達成するのに役立つこと

  • レイヤーのインベントリ
  • 保持期間の選択
  • キーの検査
  • 再検証と変更の実行

クイックチェック

  • キャッシュなしとは、何も保持されないという意味でしょうか?
  • Varyはアクセス権限を保護するのか?
  • すべてのAPIをキャッシュすべきか?

手順

  1. 1

    レイヤーのインベントリ

    ブラウザ、CDN、プロキシ、サービスワーカー、およびアプリケーションのキャッシュを一覧表示する。 パブリックレスポンスとパーソナライズされたレスポンスを分類する。 HTTPポリシーは、コードで実装されたキャッシュを自動的に記述するものではない。

    成果物:レイヤーと所有者の図。

  2. 2

    保持期間の選択

    RFC 9111はディレクティブを区別している。no-cacheは再利用前に検証が必要であり、no-storeは関連するHTTPストレージを禁止し、unqualified privateは共有ストレージを除外する。 いずれか一つだけではシステムの機密性を保証することはできません。

    成果物:レスポンスごとの保持ポリシー。

  3. 3

    キーの検査

    メソッド、URI、および表現を変更するディメンションをチェックします。 変更はリクエストフィールドに関するものであり、認証ではありません。 アプリケーション層で省略された言語、フォーマットのネゴシエーション、およびアカウントコンテキストを探索します。

    成果物:キーと分離テスト。

  4. 4

    再検証と変更の実行

    新規レスポンスと古いレスポンス、データ更新、および取り消された権限をテストします。 ETag、条件付き検証、およびオリジンが利用できない場合の動作を検査します。 以前は正しかったレスポンスも、取り消し後に機密情報となる可能性があります。

    成果物:前後トレース

  5. 5

    2つのアカウントを使用したリプレイテスト

    架空のIDとマーカーを使用。 ウォームキャッシュとコールドキャッシュを使用して、同じURIへのリクエストを交互に実行。 ログアウト、直接リンク、および実際のトークンを記録しないログ記録を検証。

    成果物:ネガティブテストと無効化戦略

再利用可能なワークシート

承認された観察結果を記入してください。 これらのフィールドは作業用テンプレートであり、観察結果ではありません。

フィールド記録する情報
レスポンス公開またはパーソナライズ。 ディメンション
レイヤーキャッシュ、所有者、キー
ポリシー保持、鮮度、検証
試行架空のアカウント、変更、監視

架空の事例

具体的な状況

架空の例:CDNが2つのテストアカウントに対して同じURIでプロファイルレスポンスを再利用します。

決定と期待される証拠

このシナリオでは、情報漏洩を検出し、ポリシーとキーを検証し、修正とアクセス取り消し後にリプレイを実行します。

メカニズムの区別

メカニズム目的検証または制限
キャッシュなし検証が必要なストレージを許可するストレージなしとは解釈しない
修飾されていないプライベート共有キャッシュを除外する機密性保証とは解釈しない
ストアなし関連する HTTP ストレージを防止するアプリケーション キャッシュと履歴を個別にチェックする

管理指標

指標測定対象最初のアクション
アカウントの分離他のアカウントからのマーカーを禁止する本文、リンク、メタデータを検査する
有効期限と検証ポリシーに準拠した再利用有効期限と利用できないオリジンをテストする
無効化の遅延修正された表現までの時間まだ古い各レイヤーに名前を付ける

よくある間違い

  • ストレージなしとは解釈しない
  • 機密性保証とは解釈しない
  • アプリケーション キャッシュと履歴を個別にチェックする

よくある質問

キャッシュなしとは、何も保持されないという意味でしょうか?

いいえ。再利用前に検証が必要です。 ストアなしのようにストレージを禁止するわけではありません。

Varyはアクセス権限を保護するのか?

いいえ。表現の選択に参加します。 認証は分離されたままです。

すべてのAPIをキャッシュすべきか?

いいえ。メリットはコスト、鮮度、リスクによって異なります。 機密性の高いレスポンスの場合は、共有キャッシュを避けることが正当化される場合があります。

公式参照文献

参照文献はメソッドを裏付けるものです。 チェックは状況に合わせて調整してください。 これらは認証ではありません。 元の参照文献のタイトルやソース文書は別の言語で書かれている場合があります。

参照資料の確認日 .