Integración de una aplicación (Gerege SSO / RP OIDC)¶
Conecta tu aplicación como parte confiante de Gerege SSO (sso.gerege.mn). Cuando la persona usuaria pulsa «Acceder», se la redirige a sso.gerege.mn, se autentica con eID y vuelve a tu aplicación.
1. Registrar tu aplicación como cliente RP¶
Dos formas:
En Administración → Aplicaciones → Nueva aplicación, introduce el
nombre, la URI de redirección y la etiqueta, y guarda. Concede los servicios
eID que necesites (por ejemplo, eid-proxy) mediante casillas. Recibirás un
client_id / client_secret.
En el servidor, register-rp.sh configura correctamente tanto la
redirección de acceso como la URI de redirección tras el cierre de
sesión (para que el cierre de sesión no falle):
2. Configuración de la aplicación¶
Si tu aplicación está construida sobre esta plantilla, define en 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. El flujo de acceso¶
- La persona pulsa «Acceder con Gerege SSO» →
/api/auth/sso/start. - El backend
/sso/startcrea el estado (Redis) y construye la URL de autorización ensso.gerege.mn/oauth2/auth; el navegador se redirige allí. - La persona se autentica con eID en sso.gerege.mn.
- sso.gerege.mn redirige de vuelta a
https://myapp.dgov.mn/sso/callback?code&state. - El backend
/sso/callbackcanjea el código por tokens, inserta o actualiza al ciudadano porsso_suby emite la sesión propia de la aplicación (JWT).
4. Cierre de sesión¶
El cierre de sesión iniciado por la parte confiante redirige a
sso.gerege.mn/oauth2/sessions/logout con un id_token_hint y un
post_logout_redirect_uri. Esa URI posterior al cierre de sesión debe estar
registrada en el cliente (register-rp.sh la configura automáticamente).
Registra la redirección posterior al cierre de sesión
Si una aplicación se registra solo con la redirección de acceso, el cierre
de sesión falla con «post_logout_redirect_uri is not whitelisted».
register-rp.sh y la interfaz de administración configuran ambas URI a la
vez, así que este error no se produce.
Conceder servicios complementarios¶
Más allá del acceso, si tu aplicación necesita los servicios complementarios del SSO (por ejemplo, el proxy eID), el administrador concede ese servicio a la aplicación. Véase Proxy de servicios eID y Pasarela de API.