From 234a16b25c902aa1866e03ce34438efc0fc157b4 Mon Sep 17 00:00:00 2001 From: William Phetsinorath Date: Tue, 27 Oct 2026 04:21:54 +0100 Subject: [PATCH] =?UTF-8?q?doc:=20documenter=20la=20bascule=20compl=C3=A8t?= =?UTF-8?q?e=20de=20l'API=20Console=20vers=20NestJS?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit L'API est servie intégralement par server-nestjs : les endpoints V1 /api/v1/environments et /api/v1/repositories ne sont pas repris (équivalents V2 sous /api/v2/projects/:projectId/), le Swagger historique /swagger-ui renvoie 404 au profit de /swagger-ui-server-nestjs, l'authentification navigateur passe par un jeton Bearer Keycloak résolu côté backend, et une date d'expiration vide à la création d'un jeton d'API équivaut à l'absence d'expiration. Co-authored-by: Automata --- docs/platform/iam.md | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/docs/platform/iam.md b/docs/platform/iam.md index 70ac945..aee498d 100644 --- a/docs/platform/iam.md +++ b/docs/platform/iam.md @@ -6,7 +6,9 @@ Cette page présente l’IAM de la Console (Identity & Access Management) : auth L’IAM repose sur Keycloak pour l’identité (OIDC), une authentification backend via session ou jeton API, et une autorisation calculée côté serveur avec des bitmasks BigInt. -L’authentification navigateur passe par `fastify-keycloak-adapter`, qui extrait l’identité (`sub`, `email`, `given_name`, `family_name`, `groups`) et la stocke en session. Un mode jeton API (`x-dso-token`) existe aussi pour des usages non interactifs. +L’authentification navigateur s’appuie sur Keycloak (OIDC) : le client attache un jeton `Authorization: Bearer` émis par Keycloak et le backend résout l’identité du jeton (`sub`, `email`, `given_name`, `family_name`, groupes OIDC). Un mode jeton API (`x-dso-token`) existe aussi pour des usages non interactifs. + +L’API de la Console est désormais servie intégralement par le backend NestJS : les anciens endpoints V1 `/api/v1/environments` et `/api/v1/repositories` ne sont pas repris, utilisez leurs équivalents V2 sous `/api/v2/projects/:projectId/`. Le Swagger historique `/swagger-ui` n’est plus servi (404) ; la documentation d’API maintenue est disponible à `/swagger-ui-server-nestjs`. À la création d’un jeton d’API, une date d’expiration laissée vide est acceptée et équivaut à l’absence d’expiration. L’autorisation combine des permissions globales et projet par cumul : les droits attribués à l’utilisateur sont calculés à partir de l’ensemble de ses rôles.