Chapitre 1 Introduction
Le module Dynacase CAS permet à Dynacase d'authentifier les utilisateurs sur un
système CAS (Central Authentication
System).
Le module Dynacase CAS fournit une classe casAuthenticator
qui implémente
l'authentification CAS.
Une fois l'utilisateur authentifié, Dynacase mappe le login de connexion avec
un utilisateur local pré-existant, ou bien délègue la gestion de la création à
un provider.
Exemple de flux d'échanges entres les serveurs :
- User Agent = le navigateur Web de l'utilisateur.
- Web Server = le serveur Web qui héberge un ensemble d'applications
(Dynacase Platform, appX, appY, etc.) qui utilisent le mécanisme SSO CAS pour
l'authentification.
- CAS Server = le serveur CAS qui centralise les demandes d'authentification.
- LDAP Server = le serveur LDAP qui contient la liste des utilisateurs utilisés
en backend par le serveur CAS.
- Le navigateur client fait une requête sur l'application Dynacase. Celle-ci
redirige l'utilisateur sur la page de login du serveur CAS.
- Le navigateur se connecte sur la page de login du serveur CAS. L'utilisateur
remplit et soumet le formulaire d'authentification. Si les éléments sont
valides, le serveur CAS redirige l'utilisateur sur l'application initiale en
rajoutant un ticket dans l'URL de connexion.
- Le navigateur se re-connecte donc sur l'application Dynacase mais cette fois
avec un numéro de ticket.
- Dynacase récupère le ticket et se connecte au serveur CAS pour valider le
ticket. Si le ticket est valide, alors Dynacase valide l'authentification et
ouvre une session pour l'utilisateur.
- Dans le cas ou la création à la volée est activée, et que le compte
utilisateur n'existe pas dans Dynacase, ce dernier va alors utiliser son
mécanisme de « provider » (freedomNu/freedom-networkuser) pour interroger le
serveur de backend LDAP et récupérer les informations nécessaires à la
création du compte (nom, prénom, adresse e-mail, etc…).