SessionIdGenerator 元件

目錄

簡介

SessionIdGenerator 元素表示將用於建立網頁應用程式 HTTP 會話所使用的會話 ID 的會話 ID 產生器

SessionIdGenerator 元素可以巢狀在 Manager 元件內。如果沒有包含,將會自動建立預設的 SessionIdGenerator 組態,這對大多數需求來說已經足夠,— 詳情請見下方的標準 SessionIdGenerator 實作

屬性

共用屬性

SessionIdGenerator 的所有實作都支援下列屬性

屬性 說明
className

要使用的實作的 Java 類別名稱。此類別必須實作 org.apache.catalina.SessionIdGenerator 介面。如果未指定,將會使用標準值 (定義如下)。

jvmRoute

此 Tomcat 執行個體的路由識別碼。將會將它加入會話 ID,以允許負載平衡器進行無狀態黏著路由。jvmRoute 將如何包含在 ID 中的詳細資訊會依實作而異。預設行為請見 標準實作

注意 - 此屬性的值會自動從 Engine 元素的 jvmRoute 屬性繼承。

sessionIdLength

此 SessionIdGenerator 建立的會話 ID 長度。關於 sessionIdLength 如何影響會話 ID 長度的詳細資訊取決於實作。請參閱 標準實作 以了解預設行為。

標準實作

Tomcat 提供標準實作供 SessionIdGenerator 使用。

標準 SessionIdGenerator 實作

SessionIdGenerator 的標準實作是 org.apache.catalina.util.StandardSessionIdGenerator。它支援下列屬性

屬性 說明
jvmRoute

此 Tomcat 執行個體的路由識別碼。它會加到會話 ID 的結尾,並以「.」分隔。

sessionIdLength

此 SessionIdGenerator 建立的會話 ID 長度。更精確地說,會話 ID 長度是 sessionIdLength 的兩倍,加上尾端的 jvmRoute 長度(如果已提供)。係數 2 是因為會話 ID 是使用 sessionIdLength 隨機位元組建構的,每個位元組在實際 ID 中都編碼為兩個十六進位字元。預設值為 16。