セッション (Web)

セッション (Web)

[4] Web にはいくつかのセッション (session) があります。

Web ブラウザーのセッション

[5] クッキーにおけるセッションは、 Webブラウザーを起動してから終了するまでです。

[11] 利用者エージェントによっては、セッションを越えてクッキーを保持するかどうかを設定できます >>8private browsing モードではそのように動作することがあります >>8

[10] クッキーセッションを越えて保持するかどうかは、 個別のクッキーの持続フラグが設定されているかどうかに依存します。

[9] クッキーの持続フラグは、Expires 属性Max-Age 属性の有無や、 利用者エージェントセッションを越えてクッキーを保持するよう設定されているかどうか >>8 に依存して決まります。 Expires

[2] 現在セッションが終わった (the current session is over) 時点は利用者エージェントにより定義されます >>1

[3] 現在セッションが終わったら、持続フラグが設定されていないクッキーはすべて削除しなければなりません >>1

[19] Webブラウザーによっては、一度を閉じてから、 それをすぐに復元したり、プロセス終了後に元の状態を復元したりできることがあります。 元のセッションが維持されていて復元されるのか、 元の状態に近い新しいセッションが新規作成されるのかは実装によります。

[20] WebDriverセッションはこの意味かもしれません。

[21] Push API閲覧セッション (browsing session) と呼んでいます。

セッションストレージ領域のセッション

[6] sessionStorage最上位閲覧文脈起源に関連付けられています。

[16] 利用者エージェントプロセス再起動したとしても、 その後再開できるなら、それは同じセッションが継続していると扱うことができます >>15

[17] 閲覧文脈の作成

navigate 間のセッション

[22] Geolocation API Specification は、 現在閲覧セッション (current browsing session) という言葉を使っています。 その意味は、 閲覧文脈が他の URLnavigate されるときまで、 と説明されています。 >>23

セッション履歴のセッション

[7] セッション履歴閲覧文脈に関連付けられたリストです。

[14] タブを開いてから閉じるまでに対応するのが一般的ですが、 最近の Webブラウザーには閉じたタブを復元する機能があり、 閉じたはずの閲覧文脈が (セッション履歴文書の状態を含めて) 復元されることがあり、閲覧文脈を捨てる処理やセッション履歴とどう対応しているのかは必ずしも明確ではありません。

ダイジェスト認証のセッション

[18] ダイジェスト認証

TLS セッション

TLSセッション

Web アプリケーションのセッション

[13] Webアプリケーション (鯖側にせよクライアント側にせよ、 両方で構成されるものにせよ。) には個々で独自の (あるいは利用する WAF 等の) “セッション”を実装していることがあります。その意味や実現方法は様々です。

[25] クライアントセッションを維持させる方法として、 クッキーセッションIDを含める方法がよく使われています。

[26] 他にもいくつかの方法がありました。例えば URLセッションIDを含める方法が使われましたが、 汚いURLで危険でした。

[24] セッション固定攻撃セッションは、こちらのセッションです。

[12] 逆プロキシで使われる sticky session もこのセッションです。

メモ