Aller au contenu principal
Version: 2.0.0

Concepts

Utilisateurs, sessions et tokens

Un utilisateur est une personne ; une session est une connexion authentifiée avec un expires_at. Créer une session (POST /v1/genesis/sessions) renvoie un token JWT de courte durée à joindre aux requêtes suivantes — contrairement aux appels service à service, Genesis n'utilise pas de clés API longue durée pour l'authentification utilisateur final (voir Authentification).

Rôles et permissions

Genesis utilise un contrôle d'accès basé sur les rôles : un utilisateur a un ou plusieurs rôles, et chaque rôle accorde un ensemble de permissions (billing:read, users:write, etc.). Vérifiez les permissions, pas les noms de rôles, dans votre logique d'autorisation — le mapping rôle-permission peut changer, et du code avec role === "admin" en dur casse silencieusement si les rôles sont restructurés.

Connexions SSO

Une connexion SSO configure comment les utilisateurs d'un client s'authentifient via leur propre fournisseur d'identité (SAML ou OIDC), limitée à un domaine e-mail. Une fois qu'un domaine a une connexion active, ses utilisateurs doivent s'authentifier via SSO — la connexion par mot de passe est désactivée, pas simplement optionnelle. Testez d'abord avec un domaine hors production.

MFA et passkeys

Genesis prend en charge le MFA basé sur TOTP et les passkeys WebAuthn. Une session créée sans avoir complété un défi MFA requis est rejetée avec 403 mfa_required, sans être silencieusement rétrogradée en session non vérifiée.