smart_ide/docs/features/sso-gateway-service.md
Nicolas Cantu 68cb5737c5 feat(sso-gateway): add OIDC JWT gateway and proxy to micro-services
- New service smart-ide-sso-gateway (port 37148): JWKS verify, /health,
  /v1/token/verify, /v1/upstreams, /proxy/<key>/...
- CORS on JSON responses when SSO_CORS_ORIGIN is set; optional empty
  bearer for langextract upstream
- Docs: feature, API, repo index; wire sso-docv-enso and services scope
- Extend config/services.local.env.example with OIDC and gateway vars
2026-04-03 22:42:44 +02:00

2.0 KiB
Raw Blame History

Passerelle SSO — accès utilisateur aux API smart_ide

Rôle

Le service smart-ide-sso-gateway (services/smart-ide-sso-gateway/) centralise la validation OIDC (jeton utilisateur émis par docv / Enso) et le proxy vers les micro-services du monorepo avec leurs jetons techniques.

  • Le navigateur ou un BFF présente un access_token utilisateur (Authorization: Bearer).
  • La passerelle vérifie la signature (JWKS), iss, éventuellement aud, puis appelle lamont avec le Bearer de service ou la clé API attendue par chaque cible.

Les appels machine à machine sans contexte utilisateur (scripts, ia_dev) restent possibles en direct vers chaque service, comme avant : la passerelle est une option pour les parcours « utilisateur authentifié par docv ».

Lien avec docv / Enso

Le flux authorization code + PKCE et le rôle dIdP restent décrits dans sso-docv-enso.md. La passerelle ne remplace pas docv : elle consomme les access_token déjà obtenus par le front ou un back de confiance.

Amonts proxy

Les clés exposées par GET /v1/upstreams et utilisées dans /proxy/<clé>/... sont : orchestrator, repos_devtools, ia_dev_gateway, anythingllm_devtools, tools_bridge, langextract, regex_search, claw_proxy, local_office. Les variables denvironnement sont les mêmes que pour le reste de la plateforme (config/services.local.env.example).

En-têtes vers lamont

En plus de lauthentification de service, la passerelle peut envoyer :

  • X-OIDC-Sub — claim sub du JWT utilisateur ;
  • X-OIDC-Email — claim email si présent.

Les services amont peuvent sen servir pour du journal ou des règles fines ; la politique dautorisation métier reste de leur responsabilité.

Documentation détaillée