LemonLDAP::NG et le support SAML2
-
Upload
clement-oudot -
Category
Technology
-
view
3.070 -
download
2
Transcript of LemonLDAP::NG et le support SAML2
16, 17 et 18 MARS 2010
LemonLDAP::NG / SAML2
Xavier GUIMARD(Gendarmerie Nationale)
Clment OUDOT(Groupe LINAGORA)
SOMMAIRE
Dfinition du WebSSO
Prsentation de LemonLDAP::NG
SAML2 et la fdration d'identits
Support SAML2 dans LemonLDAP::NG
Dmonstration
Le WebSSO
SSO signifie Single Sign On, qui peut se traduire en franais 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 requtes entre le client et le serveur, et indiquer au serveur que le client est bien authentifi
Techniquement, cela repose essentiellement sur la gestion d'une session SSO stocke au niveau du serveur WebSSO et lie un cookie dans le navigateur de l'utilisateur
Deux architectures complmentaires existent :WebSSO par dlgation
WebSSO par mandataire inverse
SSO par dlgation
SSO par mandataire inverse
Autres fonctionnalits
Le rle standard du WebSSO est de propager l'authentification sur des applications Web
En supplment, ces fonctionnalits sont souvent prsentes dans les produits de WebSSO :Contrle d'accs aux applications (qui a accs quoi)
Transfert d'informations complmentaires l'identifiant de l'utilisateur (nom, mails, etc.)
Gestion du mot de passe (interface de changement de mot de passe, rinitialisation, etc.)
Prsentation de LemonLDAP::NG
LemonLDAP::NG est un logiciel libre (licence GPL) hberg chez OW2 : http://lemonldap.ow2.org
Dvelopp l'origine par Xavier GUIMARD pour les besoins de la Gendarmerie Nationale
Produit bas sur Apache et mod_perl, entirement crit en Perl (moteur et interfaces)
Fournit un portail d'accs dynamique et une interface d'administration
Architecture
Principe
L'implmentation par dfaut utilise un annuaire LDAP pour :authentifier l'utilisateur (vrification du mot de passe)
effectuer un contrle d'accs (selon les attributs LDAP de l'utilisateur)
approvisionner les applications (par transmission des attributs LDAP dans les en-ttes HTTP)
permettre l'utilisateur de changer son mot de passe
Fonctionnement gnral
Gestion des sessions
Utilisation de n'importe quel module Apache::Session pour le stockage (File, DBI, LDAP, ...)
Inscription du numro de session dans un cookie temporaire (non crit sur disque) avec le choix :Cookie non-scuris
Cookie scuris (HTTPS uniquement)
Double cookie
Dure de vie des sessions configurable
Rgles d'accs
Les rgles d'accs sont des expressions Perl
Elles peuvent tre appliques sur tout ou partie d'une application protge (utilisation d'expressions rgulires sur les URL)
Tous les attributs exports lors de l'authentification sont disponibles dans les rgles
Un systme de macros permet de stocker des valeurs calcules en session
Rgles d'accs
Accs pour tous les utilisateurs authentifis :Default => accept
Accs pour le groupe admin :Default => $groups =~ /admin/
Interception du logout de l'application :^/logout.php => logout_sso
Htes virtuels
La distinction des applications est base sur la notion d'htes virtuels
Les htes virtuels peuvent tre rpartis sur plusieurs serveurs Apache
Chaque hte virtuel possde :Des rgles d'accs
Des en-ttes HTTP
Les en-ttes HTTP contiennent galement des expressions Perl :Auth-User => $uid
Auth-Name => uc($sn).", ".ucfirst($gn)
Applications nativement compatibles
Autres applications compatibles
Applications reposant sur la scurit Apache (.htaccess) : Nagios, ...
Applications reposant sur la scurit Tomcat (users.xml) : Lutece, Probe, ...
Applications utilisant HTTP Basic : Domino Web Access, Outlook Web Access, ...
Applications compatibles SiteMinder
Quelques captures d'cran
Fdration d'identit
La fdration d'identit permet de crer des cercles de confiance entre fournisseurs de service et fournisseurs d'identits
Les comptes des diffrents fournisseurs de services peuvent tre fdrs avec le compte du fournisseur d'identit (ce compte est appel principal)
Chaque fournisseur de service dialogue alors avec le fournisseur d'identit pour s'assurer que l'utilisateur est bien reconnu sur le cercle de confiance
Les standards d'origine SAML1, Liberty Alliance et Shibboleth convergent aujourd'hui vers SAML2
Cercle de confiance
Service Provider
Identity Provider
Service Provider
Attributes Provider
User interactionWeb service
Cinmatique d'authentification
SAML2 et LemonLDAP::NG
Utilisation de la bibliothque GPL Lasso
Modules :LemonLDAP::NG en tant que fournisseur de service (SP) : l'authentification et la rcupration d'attributs sont faites sur un fournisseur d'identit SAML2
LemonLDAP::NG en tant que fournisseur d'identit (IDP) : l'ouverture d'une session locale WebSSO ouvre galement une session SAML2
Planning :Module SP : 1er trimestre 2010 (version de dveloppement)
Module IDP : 2e trimestre 2010 (version de dveloppement)
Sortie de la version stable incluant SAML2 et OpenID : 2 semestre 2010
Dmonstration
16, 17 et 18 MARS 2010
Merci de votre attention
WWW.LINAGORA.COM