- Entités: 7 nouveaux schémas (sessions, devices, consents, location-history, interest-gauges, reports, exports) - États: 5 diagrammes lifecycles (compte, contenu, session, signalement, export) - Séquences: 6 flows (auth, refresh token, modération, signalement, export, suppression) - Renommage: modele-global.md → entities-overview.md - MkDocs: organisation hiérarchique par catégories Format concis: diagrammes Mermaid + règles essentielles uniquement
1.1 KiB
1.1 KiB
Sessions
📖 Gestion des sessions utilisateur et tokens d'authentification OAuth2/OIDC
Diagramme
erDiagram
USERS ||--o{ SESSIONS : "possède"
DEVICES ||--o{ SESSIONS : "associé"
SESSIONS {
uuid id PK
uuid user_id FK
uuid device_id FK
string access_token_hash
string refresh_token_hash
timestamp access_token_expires_at
timestamp refresh_token_expires_at
inet ip_address
string user_agent
string city
string country_code
timestamp created_at
timestamp last_activity_at
timestamp revoked_at
}
Légende
Durées de vie :
- Access token : 15 minutes
- Refresh token : 30 jours (rotatif)
- Inactivité : Déconnexion automatique après 30 jours
Sécurité :
- Tokens stockés en SHA256 (jamais en clair)
- Rotation automatique des refresh tokens
- Détection replay attack
Multi-device :
- Sessions simultanées illimitées
- Révocation individuelle ou globale possible
- Alertes si connexion depuis nouveau device ou pays différent