guides & conseils pour l'administrateur / Considérations générales :

Quelques explications concernant SSO / CAS / LDAP...

S.S.O. (Single Sign On) :

Il s'agit uniquement d'un principe de fonctionnement : c'est l'idée de n'avoir à s'authentifier qu'une seule fois pour accéder à plusieurs services différents :

  • sans SSO : chaque service demande de façon indépendante une identification séparée. Cela implique pour l'utilisateur autant d'id/mdp que d'applications utilisées.
  • avec SSO : l'utilisateur n'a qu'un seul id/mdp, il s'identifie une seule fois et cette identification est valable pour toutes les applications affiliées au dispositif de SSO.

L'idéal est que le "Single Sign On" soit complété par un "Single Sign Off" : que la déconnexion volontaire de l'utilisateur (d'une application affiliée, ou d'un éventuel portail commun) provoque (puisse provoquer) la déconnexion globale de toutes les applications affiliées.

C.A.S. (Central Authentication Service):

CAS est un standard/protocole permettant le partage de session/ticket/jeton entre plusieurs applications clientes.
Un serveur, fournissant après une authentification réussie des jetons d'identification selon le protocole CAS à des applications clientes permet donc un fonctionnement en SSO.

Il existe plusieurs serveurs, et plusieurs clients, qui mettent en œuvre ce protocole.
Le serveur CAS de référence est celui de Ja-Sig, programmé en Java. Ce serveur a été créé par l'université de Yale, qui est également à l'origine du protocole CAS. Mais il en existe d'autres, dont RubyCAS-server, et un autre, programmé en Python par Eole.

LDAP (Lightweight Directory Access Protocol) :

LDAP est un standard/protocole, et par extension un service d'annuaire utilisant ce standard.

Son objectif n'est pas de stocker des infos de session ou d'authentification, mais est beaucoup plus large que cela.
On peut y stocker des informations sur des personnes, des groupes, des machines, etc.

Un annuaire LDAP sert en général à centraliser dans un service séparé des informations qui par nature doivent pouvoir être consultées par des personnes / services (au sens informatique) indépendants.
Les données stockées dans un annuaire LDAP sont plutôt statiques. Les données dynamiques sont de préférence stockées dans une base de données relationnelle.