CAS, OpenID, SAML : concepts, différences et exemples Clément Oudot LDAP / IAM expert LINAGORA
Présentation personnelle Ingénieur LDAP, IAM et fédération des identités à LINAGORA depuis 2003
Leader des projets communautaires : LemonLDAP::NG ( http://lemonldap-ng.org )
LDAP Tool Box ( http://ltb-project.org ) 27.10.2011 Application Security Forum - Western Switzerland - 2011
Agenda WebSSO, contrôle d'accès et fédération d'identité
Les protocoles CAS
OpenID
SAML Que choisir ? 27.10.2011 Application Security Forum - Western Switzerland - 2011
WebSSO, contrôle d'accès et fédération d'identité
WebSSO SSO signifie « Single Sign On », qui peut se traduire en français par « authentification unique » Le WebSSO se consacre à l'authentification unique pour les applications Web, c'est-à-dire des applications client-serveur dont le client est un navigateur Web (IE, Firefox, etc.) Le principe de base est d'intercepter les requêtes entre le client et le serveur, et indiquer au serveur que le client est bien authentifié
Intérêt du WebSSO : éviter la multiplication des identités
Utilisateur Application Web Portail WebSSO Cinématique simple 1 2 3
Contrôle d'accès Une fois l'utilisateur authentifié, il faut récupérer ses habilitations : Des rôles
Des groupes
Des attributs divers (âge, nationalité, etc.) Les habilitations donnent accès à des ressources ou des fonctions
Plusieurs modèles existent, le principal étant RBAC (Role Based Access Control)
Le protocole XACML permet de déléguer les demandes d'habilitations à des points de décision (PDP)
Fédération d'identités Notions de cercle de confiance, fournisseur d'identités (IDP) et fournisseur de service (SP)
L'utilisateur qui possède plusieurs identités numériques peut les fédérer au sein d'un cercle de confiance
Le résultat visible est l'accès transparent aux fournisseurs de service, mais d'autres avantages existent, comme la déconnexion unique (SLO)
Cercle de confiance Fournisseur de service Fournisseur d'identité Fournisseur de service Fournisseur d'attribut
Protocoles
CAS Central Authentication Service
Documentation du protocole pour 1.0 et 2.0
Utilisation de tickets de service dans l'URL, avec validation par un lien dorsal
Possibilité de tickets proxy
Pas de partage d'attributs
Cinématique CAS 1. Premier accès à l'application Serveur CAS Application « CASsifiée » 2. Authentification sur CAS et récupération d'un ticket 3. Transmission du ticket 4. Validation du ticket et récupération de l'identifiant
CAS Requête ticket de service CAS : https://auth.example.com/cas/login?service=http://auth.example.com/cas.pl   Réponse ticket de service CAS : http://auth.example.com/cas.pl?ticket=ST-6096f5d3ddb33df6fd79529e2d626a6d

ASFWS 2011 : CAS, OpenID, SAML concepts, différences et exemples