Intégration d'une application (Gerege SSO / RP OIDC)¶
Connectez votre application comme partie utilisatrice de Gerege SSO (sso.gerege.mn). Lorsque l'utilisateur clique sur « Se connecter », il est redirigé vers sso.gerege.mn, s'authentifie avec eID, puis revient dans votre application.
1. Enregistrer votre application comme client RP¶
Deux possibilités :
Dans Administration → Applications → Nouvelle application, saisissez le
nom, l'URI de redirection et l'étiquette, puis enregistrez. Accordez les
services eID nécessaires (par exemple eid-proxy) via les cases à cocher.
Vous recevez un client_id / client_secret.
Sur le serveur, register-rp.sh renseigne correctement à la fois la
redirection de connexion et l'URI de redirection après déconnexion (afin que
la déconnexion n'échoue pas) :
2. Configuration de l'application¶
Si votre application est bâtie sur ce modèle, renseignez dans backend.env :
SSO_ISSUER=https://sso.gerege.mn
SSO_CLIENT_ID=<client_id>
SSO_CLIENT_SECRET=<client_secret>
SSO_REDIRECT_URI=https://myapp.dgov.mn/sso/callback
SSO_SCOPE=openid profile email
3. Le flux de connexion¶
- L'utilisateur clique sur « Se connecter avec Gerege SSO » →
/api/auth/sso/start. - Le backend
/sso/startcrée un état (Redis) et construit l'URL d'autorisationsso.gerege.mn/oauth2/auth; le navigateur y est redirigé. - L'utilisateur s'authentifie avec eID sur sso.gerege.mn.
- sso.gerege.mn redirige vers
https://myapp.dgov.mn/sso/callback?code&state. - Le backend
/sso/callbackéchange le code contre des jetons, met à jour le citoyen parsso_sub, puis émet la session propre à l'application (JWT).
4. Déconnexion¶
La déconnexion initiée par la partie utilisatrice redirige vers
sso.gerege.mn/oauth2/sessions/logout avec un id_token_hint et un
post_logout_redirect_uri. Cette URI de post-déconnexion doit être
enregistrée sur le client (register-rp.sh s'en charge automatiquement).
Enregistrez la redirection post-déconnexion
Si une application n'est enregistrée qu'avec une redirection de connexion, la
déconnexion échoue avec « post_logout_redirect_uri is not whitelisted ».
register-rp.sh et l'interface d'administration renseignent les deux URI
ensemble, ce qui évite cette erreur.
Accorder des services complémentaires¶
Au-delà de la connexion, si votre application a besoin des services complémentaires du SSO (par exemple le proxy eID), l'administrateur accorde ce service à l'application. Voir Proxy des services eID et Passerelle API.