1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
//! In-memory STS Store
//!
//! This module contains the STS store struct and its sub-trait implementations:
//! - `session.rs` - SessionStore implementation
//! - `identity.rs` - IdentityStore implementation
use crate;
use HashMap;
/// In-memory implementation of STS store
///
/// This is a pure persistence layer that stores sessions and identities for ALL tenants.
/// Each session/identity carries its own tenant_id and account_id.
///
/// # Architecture
///
/// The `StsStore` trait is a composite of sub-traits, each implemented in its own file:
/// - `SessionStore` → `memory/sts/session.rs`
/// - `IdentityStore` → `memory/sts/identity.rs`
// Note: StsStore is automatically implemented via blanket implementation
// because InMemoryStsStore implements all required sub-traits in other files