...
- 2 serveurs CAS en blue–green deployment :
- En temps normal, une seule instance fonctionne à la fois
- Quand on doit redémarrer CAS pour appliquer une mise à jour, on démarre une seconde instance, sur laquelle on bascule une fois démarrée. Puis on stoppe la première instance.
- ticket registry : mongodb
- service registry : fichiers json avec git local
- authn : ldap ou spnego ou délégation FranceConnect
- divers : remember-me, throttle, interrupt (réconciliation FranceConnect avec ldap)
- protocoles utilisés pour les services : CAS (dont proxyCAS)
RECIA
Architecture infra:
- frontal HAProxy mutualisé avec Haute dispo
- 3 serveurs CAS en load-balancing (pas de sticky session)
- ticket registry : redis+sentinel (dockerisé et lancé sur les 3 serveurs)
- service registry : fichiers json avec git local
- configuration CAS : fichiers avec git (distinct du git service registry)
- Ferme OpenLdap 2 master + 3 slave en interrogation
Fonctionnalités:
- CAS IDP:
- protocoles utilisés pour les services: CAS, SAML, OIDC
- SAML: FER, GAR
- OIDC: ProConnect
- CAS SP (délégation d'auth):
- CAS: pour les tests
- SAML: EduConnect, guichets agents EN, guichets collectivités
- OIDC: à venir
- SCIM pour idRuide
- MFA: protocole mfa-gauth + VaultWarden pour gestion OTP (à venir gestion multi-device via UI CAS-management pour laisser au choix de l'utilisateur le "device")
- Interrupt: scripts groovy pour rediriger l'utilisateur selon le cas: Validation CGU, gestion sur le bon domaine de service (gestion multi-domaine des services), etc.
- Gestion de logout partiel pour le cas du changement du contexte d'établissement pour un utilisateur sur plusieurs établissements.
Sources customisées: https://github.com/GIP-RECIA/cas-war-overlay
Documentations: https://github.com/GIP-RECIA/cas-war-overlay/tree/master/docsÉchange possible via le RocketChat ESUP
Université de Technologie de Compiègne
...