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



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

Tour d horizon des différents SSO disponibles

Drupal et les SSO Nicolas Bocquet < nbocquet@linalis.com >

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

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

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

La gestion des identités au CNRS Le projet Janus

JOSY. Paris - 4 février 2010

PHP et le Cloud. All rights reserved. Zend Technologies, Inc.

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

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

Description de la maquette fonctionnelle. Nombre de pages :

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

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

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

ENVOLE 1.5. Calendrier Envole

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

DESCRIPTION DU PLUGIN D AUTHENTIFICATION AVEC CAS POUR SPIP

Introduction. aux architectures web. de Single Sign-On

WEB SSO & IDENTITY MANAGEMENT PARIS 2013

LemonLDAP::NG. LemonLDAP::NG 1.2. Clément OUDOT RMLL 9 juillet 2012

La fédération d identité Contexte, normes, exemples

les techniques d'extraction, les formulaires et intégration dans un site WEB

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

PortWise Access Management Suite

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

Oauth : un protocole d'autorisation qui authentifie?

Formation : Langues : Types d Intervention et Secteurs d Activité :

La fédération d identités, pourquoi et comment? Olivier Salaün, RENATER ANF Mathrice 2014

Groupe de travail Gestion des identités Les usages et les services ATELIER 2

Calendrier des Formations 2012

SÉCURITÉ POUR LES ENTREPRISES UN MONDE NUAGEUX ET MOBILE. Sophia-Antipolis 01/07/2013 Cyril Grosjean

Service d'authentification LDAP et SSO avec CAS

Informatique & Systèmes de Communication. Stages de 12 à 16 semaines aux Etats-Unis

Sécurisation des architectures traditionnelles et des SOA

Hébergement de sites Web

Exploration des technologies web pour créer une interaction entre Mahara et les plateformes professionnelles et sociales

Mise en place d'un serveur d'application SIG au Conseil général de Seine-et-Marne

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

Les technologies de gestion de l identité

Extension SSO Java. Cette note technique décrit la configuration et la mise en œuvre du filtre de custom SSO Java.

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.

Projet de Java Enterprise Edition

Espace Numérique de Travail

ADMINISTRATION DE ADOBE LIVECYCLE MOSAIC 9.5

SAML et services hors web

Formation en Logiciels Libres. Fiche d inscription

Technologies Web. Ludovic Denoyer Sylvain Lamprier Mohamed Amine Baazizi Gabriella Contardo Narcisse Nya. Université Pierre et Marie Curie

DEMARREZ RAPIDEMENT VOTRE EVALUATION

Outil de planification en ligne pour des créations de rendez-vous ou de sondage

GWT à l'épreuve du feu. by Sami Jaber (DNG Consulting)

L'automatisation open source pour SI complexes

Augmenter la disponibilité des applications JEE grâce au clustering : Le projet open source JShaft

Groupe Eyrolles, 2004 ISBN :

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

HYPERPLANNING EST UN LOGICIEL INDEX EDUCATION

Introduction aux architectures web de Single Sign-on

Point sur les solutions de développement d apps pour les périphériques mobiles

Hassene BELGACEM. Expériences Professionnelles. JEE architect / Technical leader. Ingénieur Informatique. Cycle Préparatoire

Innovation technologique dans les établissements scolaires : l ENT, les impacts sur l organisation du travail et les risques associés

Offre LinShare. Présentation. Février Partage de fichiers sécurisé. LinShare 1.5

Implémentation libre de Liberty Alliance. Frédéric Péters

Plateforme Applicative Zend PHP Cloud

PASS v2.0 : solution d authentification unique basée sur les composants Shibboleth Service Provider v2.5.1 et Identity Provider v2.3.

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

Hébergement MMI SEMESTRE 4

AccessMaster PortalXpert

Développement des Systèmes d Information

DESCRIPTION DU COMPOSANT

Par KENFACK Patrick MIF30 19 Mai 2009

Digital DNA Server. Serveur d authentification multi-facteurs par ADN du Numérique. L authentification de confiance

REAUMUR-ACO-PRES. Wifi : Point et perspectives

IPS-Firewalls NETASQ SPNEGO

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

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

Authentification unifiée Unix/Windows

ContactOffice. La Messagerie collaborative pour l'éducation. Assises 2015 du CSIESR Avignon

Solutions Microsoft Identity and Access

Gestion des utilisateurs dans un environnement hétérogène

Guide de mise en œuvre d une authentification forte avec une Carte de Professionnel de Santé (CPS) dans une application Web

Les grandes facettes du développement Web Nicolas Thouvenin - Stéphane Gully

Programmation Web. Madalina Croitoru IUT Montpellier

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

INGÉNIEUR - DÉVELOPPEUR SENIOR PHP. 28 ans - 8 ans d'expérience

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

THÉMATIQUES. Comprendre les frameworks productifs. Découvrir leurs usages. Synthèse

Logiciels Open Sources et le Secteur Privé

Eliminer les zones d ombre et fournir une identité utilisateur sur le pare-feu dans un environnement client léger

SITE WEB E-COMMERCE ET VENTE A DISTANCE

Formations. «Règles de l Art» Certilience formation N SIRET APE 6202A - N TVA Intracommunautaire FR

PRIMAVERA P6 ENTERPRISE PROJECT PORTFOLIO MANAGEMENT WEB SERVICES

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

CAHIER DES CHARGES D IMPLANTATION

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

CATALOGUE DES FORMATIONS LANGUES

Protection des Applications Web avec OpenAM

Introduction à Sign&go Guide d architecture

Transcription:

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

CAS, un SSO web open source Jérôme LELEU Committer CAS Architecte du CAS chez SFR https://github.com/leleuj @leleuj 27 au 29 mars 2013

Sommaire SSO et CAS Protocole CAS Serveur CAS : fonctionnalités, mise en œuvre, intégration Clients CAS Le CAS chez SFR

Définition d un SSO Single Sign-On = «s authentifier 1 seule fois et accéder à n ressources protégées» Système SSO = authentification unique et centralisée + contrôle d accès

CAS : généralités Central Authentication Service Créé à Yale en 2001 Open source Unicon

CAS : les éléments clés 1 serveur en Java valide les logins/mots de passe session SSO (CASTGC) / accès (ST) n clients : technologies différentes, embarqués dans les applications («cassifiées») 1 protocole public

Protocole CAS : la cinématique NAVIGATEUR 1: /app/protected 2a: vers /cas/login?service=/app/ 5b SITE WEB CLIENT CAS 5a: vers /app/?ticket=st + CASTGC 3 2b 4 : login /pwd 7: SERVEUR CAS

Back office : déclaration des services

Protocole CAS : concepts avancés renew = forcer l authentification gateway = essayer l authentification Proxification CAS : SITE WEB WEB SERVICE TGT ST PT CLIENT CAS PGT+PT CLIENT CAS ST PT SERVEUR CAS

Serveur CAS : authentification LDAP BD Radius Certificats X509 SPNEGO JAAS Votre méthode d authentification

Serveur CAS : stockage des tickets En mémoire BD JBoss Cache Ehcache Memcached

Serveur CAS : logout SLO = Single Log Out Communication serveur CAS application Clustering applicatif SITE WEB? CLIENT CAS SITE WEB 1: /cas/logout 2: /app/ + logoutrequest= SERVEUR CAS <samlp:logoutrequest <samlp:sessionindex>st</samlp:sessionindex> </samlp:logoutrequest> CLIENT CAS

Serveur CAS : autres fonctionnalités API REST Remember-me Audit Monitoring

Serveur CAS : composants techniques 1 webapp + n librairies optionnelles Spring Core, Security, MVC Webflow : login-webflow.xml classe CentralAuthenticationServiceImpl

Serveur CAS : mise en oeuvre Overlay Maven : + + Configuration : Configuration Contexte Spring Réglage des timeouts Stockage des tickets Méthodes d authentification Identifiant et attributs de l utilisateur Définition des différentes propriétés ticketexpirationpolicies.xml ticketregistry.xml deployerconfigcontext.xml cas.properties

Serveur CAS : page de login

Intégration avec OAuth, SAML et OpenID Interopérabilité Les différents supports : Protocole Type Support client Support serveur OAuth Autorisation Facebook, Twitter, Google, LinkedIn SSO, fédération d identités Complet avec OpenID SSO

Les clients CAS Officiels : Java,.Net, PHP, mod_auth_cas, Spring Security, Apache Shiro (développé par moi) Non-officiels : Perl, Python, Ruby https://wiki.jasig.org/display/casc/unofficial+cas+clients Play framework 2.x (Java & Scala) : play-pac4j + pac4j-cas (développé par moi)

Simplicité du client CAS Java <filter> <filter-name>cas Authentication Filter</filter-name> <filter-class>org.jasig.cas.client.authentication.authenticationfilter</filter-class> <init-param> <param-name>casserverloginurl</param-name> <param-value>https://localhost:8443/cas/login</param-value> </init-param> <init-param> <param-name>servername</param-name> <param-value>http://localhost:8080</param-value> </init-param> </filter> <filter> <filter-name>cas Validation Filter</filter-name> <filter-class>org.jasig.cas.client.validation. Cas20ProxyReceivingTicketValidationFilter</filter-class> <init-param> <param-name>casserverurlprefix</param-name> <param-value>https://localhost:8443/cas</param-value> </init-param> <init-param> <param-name>servername</param-name> <param-value>http://localhost:8080</param-value> </init-param> </filter> protège l application et renvoie sur le serveur CAS valide les tickets reçus du serveur CAS

Les produits «cassifiés» Confluence, JIRA Drupal Liferay uportal Outlook Web Application TikiWiki Tomcat, Apache2::AuthCAS, mod_auth_cas

Plus grosse installation en France? + de 200 sites sfr.fr 11 millions d authentification/jour 600 requêtes/seconde sur 3 serveurs Remember-me, authentification transparente (3G)

Pages de login : sécurité vs marketing Sécurité Adaptations graphiques Publicité

Meilleur stockage des tickets? Avec une très forte volumétrie sur un cluster de 3 serveurs Problèmes de performance Performant mais gourmand Très performant BD Ehcache Memcached

Double identité : SFR et Facebook http://livepass.sfr.fr «Offrir une expérience cliente innovante basée sur Facebook» Rapprochement des comptes SFR et FB Détection Javascript de l authentification FB

Conclusion Projet open source actif Simple Performant Très riche en fonctionnalités S intègre avec de nombreux outils et protocoles

Les urls pour bien commencer http://www.jasig.org/cas https://wiki.jasig.org/display/casum https://wiki.jasig.org/display/casc https://github.com/jasig