Entités: - entities-overview.md → vue-ensemble.md États (Lifecycles): - user-account-lifecycle.md → compte-utilisateur.md - content-lifecycle.md → contenu.md - session-lifecycle.md → session.md - report-lifecycle.md → signalement.md - export-lifecycle.md → export-donnees.md - parental-consent-lifecycle.md → consentement-parental.md - account-deletion-lifecycle.md → suppression-compte.md - breach-incident-lifecycle.md → incident-breach.md Séquences: - authentication-flow.md → authentification.md - token-refresh.md → refresh-token.md (terme technique conservé) - content-moderation.md → moderation-contenu.md - content-report.md → signalement.md
961 B
961 B
Séquence - Refresh Token
Diagramme
sequenceDiagram
participant A as App Mobile
participant Z as Zitadel
participant DB as PostgreSQL
Note over A: Access token expiré (15min)
A->>Z: POST /oauth/token (refresh_token)
Z->>DB: Vérification hash refresh_token
alt Token valide
Z->>Z: Génération nouveaux tokens
Z->>DB: Update session (nouveau hash)
Z->>DB: Invalidation ancien refresh_token
Z-->>A: Nouveaux tokens
Note over DB: Rotation complète
else Token invalide ou rejoué
Z->>DB: Révocation toutes sessions user
Z-->>A: 401 Unauthorized
Note over A: Reconnexion requise
end
Légende
Rotation :
- Nouveau refresh_token à chaque refresh
- Ancien token invalidé immédiatement
- Prévient replay attack
Sécurité :
- Si ancien token réutilisé → révocation globale
- Logs sécurité + notification utilisateur