http_constant/session/
const.rs

1/// Default session cookie name
2pub const SESSION_COOKIE_NAME: &str = "session_id";
3
4/// Default session ID length
5pub const SESSION_ID_LENGTH: usize = 32;
6
7/// Default session timeout in seconds (30 minutes)
8pub const SESSION_TIMEOUT_SECONDS: u64 = 1800;
9
10/// Default session timeout in milliseconds (30 minutes)
11pub const SESSION_TIMEOUT_MILLISECONDS: u64 = 1800000;
12
13/// Session
14pub const SESSION: &str = "session";
15
16/// Session data key for user ID
17pub const SESSION_USER_ID_KEY: &str = "user_id";
18
19/// Session data key for username
20pub const SESSION_USERNAME_KEY: &str = "username";
21
22/// Session data key for user role
23pub const SESSION_USER_ROLE_KEY: &str = "user_role";
24
25/// Session data key for login time
26pub const SESSION_LOGIN_TIME_KEY: &str = "login_time";
27
28/// Session data key for last access time
29pub const SESSION_LAST_ACCESS_TIME_KEY: &str = "last_access_time";
30
31/// Session data key for IP address
32pub const SESSION_IP_ADDRESS_KEY: &str = "ip_address";
33
34/// Session data key for user agent
35pub const SESSION_USER_AGENT_KEY: &str = "user_agent";
36
37/// Session data key for CSRF token
38pub const SESSION_CSRF_TOKEN_KEY: &str = "csrf_token";
39
40/// Session data key for language preference
41pub const SESSION_LANGUAGE_KEY: &str = "language";
42
43/// Session data key for timezone
44pub const SESSION_TIMEZONE_KEY: &str = "timezone";
45
46/// Session state: active
47pub const SESSION_STATE_ACTIVE: &str = "active";
48
49/// Session state: expired
50pub const SESSION_STATE_EXPIRED: &str = "expired";
51
52/// Session state: invalid
53pub const SESSION_STATE_INVALID: &str = "invalid";
54
55/// Session state: destroyed
56pub const SESSION_STATE_DESTROYED: &str = "destroyed";
57
58/// Default session cleanup interval in seconds (5 minutes)
59pub const SESSION_CLEANUP_INTERVAL_SECONDS: u64 = 300;
60
61/// Maximum number of sessions per user
62pub const MAX_SESSIONS_PER_USER: usize = 5;
63
64/// Session ID character set for generation
65pub const SESSION_ID_CHARSET: &str =
66    "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789";
67
68/// Session ID character set bytes
69pub const SESSION_ID_CHARSET_BYTES: &[u8] = SESSION_ID_CHARSET.as_bytes();
70
71/// Session regeneration threshold in seconds (15 minutes)
72pub const SESSION_REGENERATION_THRESHOLD_SECONDS: u64 = 900;
73
74/// Session flash message key prefix
75pub const SESSION_FLASH_MESSAGE_PREFIX: &str = "flash:";
76
77/// Session flash message types
78pub const SESSION_FLASH_SUCCESS: &str = "success";
79pub const SESSION_FLASH_ERROR: &str = "error";
80pub const SESSION_FLASH_WARNING: &str = "warning";
81pub const SESSION_FLASH_INFO: &str = "info";
82
83/// Session remember me cookie name
84pub const SESSION_REMEMBER_ME_COOKIE_NAME: &str = "remember_me";
85
86/// Session remember me token length
87pub const SESSION_REMEMBER_ME_TOKEN_LENGTH: usize = 64;
88
89/// Session remember me timeout in seconds (30 days)
90pub const SESSION_REMEMBER_ME_TIMEOUT_SECONDS: u64 = 2592000;
91
92/// Session fingerprint components separator
93pub const SESSION_FINGERPRINT_SEPARATOR: &str = "|";
94
95/// Session lock timeout in milliseconds
96pub const SESSION_LOCK_TIMEOUT_MILLISECONDS: u64 = 5000;
97
98/// Session concurrent access limit
99pub const SESSION_CONCURRENT_ACCESS_LIMIT: usize = 10;