Single Sign-On open source avec CAS (Central Authentication Service) Vincent Mathieu Pascal Aubry Julien Marchal



Documents pareils
Single Sign-On open source avec CAS (Central Authentication Service)

CAS, la théorie. R. Ferrere, S. Layrisse

Single Sign-On open-source avec CAS (Central Authentication Service)

Un exemple d'authentification sécurisée utilisant les outils du Web : CAS. P-F. Bonnefoi

Introduction. aux architectures web. de Single Sign-On

Authentification et contrôle d'accès dans les applications web

Tour d horizon des différents SSO disponibles

DMZ... as Architecture des Systèmes d Information

CAS, un SSO web open source. 14h35-15h25 - La Seine A

JOSY. Paris - 4 février 2010

Ce document décrit une solution de single sign-on (SSO) sécurisée permettant d accéder à Microsoft Exchange avec des tablettes ou smartphones.

Single Sign On. Nicolas Dewaele. Single Sign On. Page 1. et Web SSO

L'AAA, késako? Bruno Bonfils, fr.org>, Novembre Sous ce terme d'apparence barbare est regroupé l'ensemble des concepts suivants :

SAML et services hors web

Introduction aux architectures web de Single Sign-on

A DESTINATION DES SERVICES TIERS. Editeurs d applications et ressources pédagogiques connectées à l ENT

d authentification SSO et Shibboleth

Documentation CAS à destination des éditeurs

Aspects techniques : guide d interfaçage SSO

Présentation du relais HTTP Open Source Vulture. Arnaud Desmons Jérémie Jourdin

Active Directory. Structure et usage

Ubuntu Linux Création, configuration et gestion d'un réseau local d'entreprise (3ième édition)

L3 informatique TP n o 2 : Les applications réseau

Introduction à Sign&go Guide d architecture

Mise en place d annuaires LDAP et utilisation dans plusieurs applications

Samson BISARO Christian MAILLARD

Description de la maquette fonctionnelle. Nombre de pages :

Annuaire LDAP, SSO-CAS, ESUP Portail...

Plan. Présentation du logiciel Sympa Architecture La gestion des hôtes virtuels Listes avec inclusion des abonnés Les modules d authentification

Authentification unifiée Unix/Windows

Fédération d'identités et propagation d'attributs avec Shibboleth

Introduction...3. Objectif...3. Manipulations...3. Gestion des utilisateurs et des groupes...4. Introduction...4. Les fichiers de base...

Présentation de la solution Open Source «Vulture» Version 2.0

S28 - La mise en œuvre de SSO (Single Sign On) avec EIM (Enterprise Identity Mapping)

WebSSO, synchronisation et contrôle des accès via LDAP

Qu'est ce qu'une Fédération d'identités? Définitions Fonctionnement de base Fonctionnement détaillé Les principaux composants

ENVOLE 1.5. Calendrier Envole

Hébergement de sites Web

Dossier Technique. Détail des modifications apportées à GRR. Détail des modifications apportées à GRR Le 17/07/2008. Page 1/10

Utiliser Améliorer Prêcher. Introduction à LDAP

Etude de l ENT de l Université de Paris 5. Mise en place d outils de suivi de la charge de l ENT (monitoring)

Architectures web/bases de données

Emmanuel Dreyfus, janvier 2011 Emmanuel Dreyfus, janvier 2011

Single Sign On (l apport déterminant du SSO dans un projet d IAM ) Yves RAISIN - biomérieux

Guide Share France. Web Single Sign On. Panorama des solutions SSO

Expérience d un hébergeur public dans la sécurisation des sites Web, CCK. Hinda Feriani Ghariani Samedi 2 avril 2005 Hammamet

CIBLE DE SECURITE CSPN DU PRODUIT PASS. (Product for Advanced SSO)

Simplifier l authentification avec Kerberos

Shibboleth. David Verdin - JOSY "Authentification centralisée pour les applications web" - Paris - 4 février mai

AccessMaster PortalXpert

Sécurisation des architectures traditionnelles et des SOA

DESCRIPTION DU PLUGIN D AUTHENTIFICATION AVEC CAS POUR SPIP

Etude de l ENT de l Université de Paris 5. Recommandations des experts suite à la journée du 29 octobre 2009

Architecture pour un référentiel d'annuaire et d'authentification Single Sign On interopérable en environnement hétérogène

IPS-Firewalls NETASQ SPNEGO

Présentation d Epicard

Mise en oeuvre d un intranet à partir de logiciels Open Source avec intégration des certificats numériques et login unique

Application des Spécifications détaillées pour la Retraite, architecture portail à portail

La mémorisation des mots de passe dans les navigateurs web modernes

Kerberos: authentification unique

Espace Numérique de Travail

Polux Développement d'une maquette pour implémenter des tests de sécurité

WEB SSO & IDENTITY MANAGEMENT PARIS 2013

Intégration du canal Stockage à Rennes 1

Présentation du logiciel Free-EOS Server

Installation de la plate-forme Liberacces 2.0 «Intégrale» avec LiberInstall

Gestion des identités Christian-Pierre Belin

LemonLDAP::NG / SAML2. Xavier GUIMARD (Gendarmerie Nationale) Clément OUDOT (Groupe LINAGORA)

Guide d interfaçage SSO Connexion des ressources aux plates-formes de type Corrélyce. Sommaire. Titre du document

Cédric Ouvry Bibliothèque nationale de France Liberty Alliance Deployment Workshop Paris December 7, 2005

Authentifications à W4 Engine en.net (SSO)

La gestion des identités au CNRS Le projet Janus

Vulnérabilités et sécurisation des applications Web

Authentification avec CAS sous PRONOTE.net Version du lundi 19 septembre 2011

Linux. Sécuriser un réseau. 3 e édition. l Admin. Cahiers. Bernard Boutherin Benoit Delaunay. Collection dirigée par Nat Makarévitch

Architecture et infrastructure Web

Authentification centralisée et SSO Sujet. Table des matières. 1 ORGANISATION Mode de rendu Informations complémentaires 1 2 SUJET 2

Kerberos : Linux, Windows et le SSO

Evidian Secure Access Manager Standard Edition

E-TRANSACTIONS. Guide du programmeur API Plug-in. Version 1.1

arcopole Studio Annexe 4 Intégration LDAP et processus d authentification Site du programme arcopole :

L identité numérique. Risques, protection

Prise en main d un poste de travail sous Windows sur le réseau du département MMI de l'upemlv. d après M. Berthet et G.Charpentier

LINUX Préparation à la certification LPIC-3 (examen LPI 300) - 2ième édition

INFORMATIQUE & WEB. PARCOURS CERTIFICAT PROFESSIONNEL Programmation de sites Web. 1 an 7 MODULES. Code du diplôme : CP09

Formation en Logiciels Libres. Fiche d inscription

Compte rendu d'activité PTI n 2

Découvrez la nouvelle version de HelpDesk! HelpDesk De nouvelles fonctions, plus de contrôle, mais toujours aussi simple!

La Latecion protection anti-intrusion Web Web Le concept «Zero effort Security» La protection des applications Extranet

JRES 2005 : La mémorisation des mots de passe dans les navigateurs web modernes

REAUMUR-ACO-PRES. Wifi : Point et perspectives

CAHIER DES CHARGES D IMPLANTATION

Journées MATHRICE "Dijon-Besançon" DIJON mars Projet MySafeKey Authentification par clé USB

Quel ENT pour Paris 5?

Introduction à. Oracle Application Express

<Insert Picture Here>ApExposé. Cédric MYLLE 05 Février Exposé Système et Réseaux : ApEx, Application Express d Oracle

OWASP Open Web Application Security Project. Jean-Marc Robert Génie logiciel et des TI

Microsoft Hosted Exchange 2010 DOCUMENT D EXPLOITATION

Transcription:

Single Sign-On open source avec CAS (Central Authentication Service) Vincent Mathieu Pascal Aubry Julien Marchal

SSO open source avec CAS Introduction Pourquoi le Single Sign-On? Principes du SSO sur le web Le choix de CAS Le mécanisme CAS L authentification sous CAS CAS-ification d une application applications web applications non web CAS aujourd hui et demain Démonstration

Pourquoi le Single Sign-On? Single Sign-On = Authentification unique et unifiée Authentifications multiples Sécurité Le vol d un mot de passe unique est critique Protéger le mot de passe Ne pas le transmettre aux applications (simplification des applications et non délégation de la sécurité) Différents mécanismes d authentification Abstraction du mode d authentification LDAP, NIS, BDD, certificats X509,

Pourquoi le Single Sign-On? service service appli n 1 appli n 2 appli n 3 appli n 1 appli n 2 appli n 3 navigateur web navigateur web sans le SSO avec le SSO

Principes du SSO web Centralisation de l authentification Sur un (d authentification) Redirections HTTP transparentes Des applications vers le d authentification Du d authentification vers les applications Passage d informations lors de ces redirections Cookies Paramètres CGI

Le choix de CAS par ESUP-Portail (1) Sécurité Le mot de passe n est transmis qu au d authentification Utilisation de tickets «opaques» et à usage unique (à la Kerberos) Mécanisme n-tiers Utilisation de services sans transmission du mot de passe Portabilité (librairies clientes) Java, Perl, JSP, ASP, PHP, PL/SQL, modules apache et PAM Adaptation aisée des applications

Le choix de CAS par ESUP-Portail (2) Pérennité Développé par l Université de Yale En production dans les universités (américaines notamment) Plateforme J2EE Code léger (un millier de lignes de code) Open source Intégration uportal

Le choix de CAS service référentiel utilisateurs service référentiel utilisateurs appli n 1 appli n 2 appli n 3 appli n 1 appli n 2 appli n 3 d authentification identifiant, mot de passe, certificat, navigateur web navigateur web sans le SSO avec CAS Mais comment ça marche?

1 ère authentification d un utilisateur CAS HTTPS formulaire d authentification : navigateur web

1 ère authentification d un utilisateur référentiel utilisateurs CAS identifiant mot de passe HTTPS TGC navigateur web TGC TGC : Ticket Granting Cookie Passeport du navigateur auprès du CAS Cookie privé et protégé (le seul cookie utilisé dans CAS ; il n est pas obligatoire) Ticket opaque rejouable

Accès à une application (après authentification) ST : Service Ticket Passeport du navigateur auprès du client CAS Ticket opaque non rejouable Limité dans le temps CAS ST ID application ST TGC HTTPS ST navigateur web TGC

Accès à une application (après authentification) ST : Service Ticket Passeport du navigateur auprès du client CAS Ticket opaque non rejouable Limité dans le temps CAS ST ID application ST TGC HTTPS ST Toutes les redirections sont transparentes pour l utilisateur navigateur web TGC Dans la pratique

Accès à une application (avant authentification) CAS application formulaire d authentification HTTPS navigateur web

Accès à une application (avant authentification) CAS ST ID application identifiant mot de passe HTTPS TGC ST navigateur web TGC ST Il n est pas nécessaire de s être préalablement authentifié auprès du CAS pour accéder à une application Quelques remarques

Remarques Une fois le TGC acquis, l authentification devient transparente pour l accès à toutes les autres applications CAS-ifiées Une fois authentifié pour une application, une session applicative est mise en place

Fonctionnement n-tiers service CAS ID PGT ST PGT application (mandataire CAS) navigateur web TGC ST PGT : Proxy Granting Ticket Passeport d'un utilisateur pour une application auprès du CAS Ticket opaque rejouable

Fonctionnement n-tiers service CAS ID PT PT PT PT : Proxy Ticket Passeport d'un utilisateur auprès d'un service tiers Ticket opaque non rejouable Limité dans le temps PGT PGT application (mandataire CAS) navigateur web L authentification TGC ST PGT : Proxy Granting Ticket Passeport d'un utilisateur pour une application auprès du CAS Ticket opaque rejouable

L authentification sous CAS Laissée à l initiative de l administrateur Développement generichandler par ESUP-Portail Possibilité d utiliser plusieurs modes d authentification Configuration au format XML CAS annuaire LDAP base de données domaine NIS certificats X509 domaine Kerberos domaine Windows NT fichiers d utilisateurs

CAS-ification d une application web Utilisation des librairies fournies Quelques lignes de code Cas-ification des applications proxy HTTPS nécessaire pour certaines URL Complexité masquée par les librairies Dans tous les cas, gérer des sessions applicatives Possibilité de mod_cas avec Apache Protection de documents statiques et/ou dynamiques

CAS-ification d une application web Exemple d utilisation de phpcas (ESUP-Portail) <?php // include phpcas library include_once('cas/cas.php'); // declare our script as a CAS client phpcas::client(cas_version_2_0,'auth.univ.fr',443,''); // redirect to the CAS server if needed phpcas::authenticateifneeded(); // at this point, the user is authenticated?> <h1>successfull Authentication!</h1> <p>user's login: <?php echo phpcas::getuser();?>.</p>

CAS-ification d une application non WEB Un des point forts de CAS Grâce au module pam_cas Exemple de configuration PAM auth sufficient /lib/security/pam_ldap auth sufficient /lib/security/pam_pwdb.so shadow nullok auth required /lib/security/pam_cas.so \ -simap://mail.univ.fr \ -phttps://ent.univ.fr/uportal/casproxyservlet

Le module pam_cas application cliente login/password login/ticket application cliente login/password login/password application pam_ldap pam_pwdb pam_cas ticket Annuaire LDAP /etc/passwd CAS Pam_cas permet d authentifier à partir d un ticket CAS

CAS-ification d un IMAP Problématique Accéder à un IMAP depuis une application web alors que l on ne connaît pas le mot de passe de l utilisateur connecté Laisser la possibilité aux clients de messagerie traditionnels de s authentifier «normalement» (avec un mot de passe) Ne pas modifier le IMAP La solution : pam_cas :-)

CAS-ification d un IMAP navigateur web client de messagerie traditionnel login / password login / PT ST webmail CAS-ifié (mandataire CAS) login / password login / password IMAP pam_ldap pam_pwdb pam_cas PT Annuaire LDAP /etc/passwd CAS

La problématique particulière d IMAP Les ouvertures de connexion vers un IMAP sont très nombreuses Les clients Web ne gardent pas les connexions IMAP ouvertes (IMP) Valider un ticket à chaque connexion est pénalisant pour le CAS Nécessité d un cache Cyrus-IMAP propose un cache en standard (sasl_authd)

La problématique particulière d IMAP client de messagerie traditionnel login / password login / PT webmail CAS-ifié (mandataire CAS) ST navigateur web login / password Cyrus imapd sasl pam_ldap pam_pwdb pam_cas PT Annuaire LDAP /etc/passwd CAS

La problématique particulière d IMAP client de messagerie traditionnel login / password login / PT webmail CAS-ifié (IMP + phpcas) ST navigateur web Cyrus imapd sasl démon Cyrus IMAP socket unix sasl_authd login / password cache pam_ldap pam_pwdb pam_cas PT démon sasl_authd Annuaire LDAP /etc/passwd CAS

La problématique particulière d IMAP Le webmail est intégré dans le SSO de ESUP-Portail En production à l Université de Nancy 2 Efficacité du cache : 95%

CAS aujourd hui et demain CAS aujourd hui Au sein du projet Esup-portail D une manière générale Limitations et perspectives CAS traite l authentification, pas les autorisations Partage de charge et tolérances aux pannes

Démonstration rapide cru.fr nancy2.fr nancy2.fr nancy2.fr nancy2.fr navigateur web jres.org

Liens utiles Home page de CAS : http://www.yale.edu/tp/cas/ Archive liste CAS : http://tp.its.yale.edu/pipermail/cas/ Archive uportal : http://list.unm.edu/archives/jasig-portal.html Documentations esup-portail : http://www.esup-portail.org/consortium/espace/sso_1b/ http://www.esup-portail.org/consortium/espace/sso_1b/cas/