CASifier une application



Similar documents
Open-source Single Sign-On with CAS (Central Authentication Service)

Thursday, February 7, DOM via PHP

Langages Orientés Objet Java

Note concernant votre accord de souscription au service «Trusted Certificate Service» (TCS)

Introduction ToIP/Asterisk Quelques applications Trixbox/FOP Autres distributions Conclusion. Asterisk et la ToIP. Projet tuteuré

Les fragments. Programmation Mobile Android Master CCI. Une application avec deux fragments. Premier layout : le formulaire

Personnalisez votre intérieur avec les revêtements imprimés ALYOS design

Tanenbaum, Computer Networks (extraits) Adaptation par J.Bétréma. DNS The Domain Name System

Repris de : Version Debian (de base)

Administrer les solutions Citrix XenApp et XenDesktop 7.6 CXD-203

ESMA REGISTERS OJ/26/06/2012-PROC/2012/004. Questions/ Answers

Introduction Les failles les plus courantes Les injections SQL. Failles Web. Maxime Arthaud. net7. Jeudi 03 avril 2014.

Inspection des engins de transport

Configuration Guide. SafeNet Authentication Service. SAS Agent for AD FS

A detailed walk through a CAS authentication

AP FRENCH LANGUAGE AND CULTURE EXAM 2015 SCORING GUIDELINES

Sun Management Center Change Manager Release Notes


U S E R D O C U M E N TA T I O N ( A L E P H I N O

TP1 : Correction. Rappels : Stream, Thread et Socket TCP

Stockage distribué sous Linux

HEALTH CARE DIRECTIVES ACT

Solaris 10 Documentation README

N1 Grid Service Provisioning System 5.0 User s Guide for the Linux Plug-In

Sun StorEdge A5000 Installation Guide

Technical Service Bulletin

Remote Method Invocation

Office of the Auditor General / Bureau du vérificateur général FOLLOW-UP TO THE 2010 AUDIT OF COMPRESSED WORK WEEK AGREEMENTS 2012 SUIVI DE LA

sept-2002 Computer architecture and software cells for broadband networks Va avec

Interfaces de programmation pour les composants de la solution LiveCycle ES (juillet 2008)

External Identity and Authentication Providers For Apache HTTP Server

Présentation Evolutions CAS Version 3

Sun Enterprise Optional Power Sequencer Installation Guide

Practical LDAP on Linux

Enterprise Risk Management & Board members. GUBERNA Alumni Event June 19 th 2014 Prepared by Gaëtan LEFEVRE

The new French regulation on gaming: Anything new in terms of payment?

In-Home Caregivers Teleconference with Canadian Bar Association September 17, 2015

TP : Configuration de routeurs CISCO

COLLABORATIVE LCA. Rachel Arnould and Thomas Albisser. Hop-Cube, France

NuFirewall. Open-source authenticating firewall

Sun Cluster 2.2 7/00 Data Services Update: Apache Web Server

Integrate 'Oracle Forms', 'Oracle Reports', 'Oracle

The Need For Speed. leads to PostgreSQL. Dimitri Fontaine 28 Mars 2013

Sun StorEdge RAID Manager Release Notes

Proxy IMAP/POP/SMTP securisé avec Perdition, Postfix et SASL

Authentication and access control in Sympa mailing list server

Installation troubleshooting guide

Qu est-ce que le Cloud? Quels sont ses points forts? Pourquoi l'adopter? Hugues De Pra Data Center Lead Cisco Belgium & Luxemburg

We are pleased to present you with detailed instructions on processing your visa application with us. Within this information pack you will find:

Optimizing Solaris Resources Through Load Balancing

PostGIS Integration Tips

Saruman Documentation

State of Maryland Health Insurance Exchange

Introduction. GEAL Bibliothèque Java pour écrire des algorithmes évolutionnaires. Objectifs. Simplicité Evolution et coévolution Parallélisme

Solaris Bandwidth Manager

BILL C-665 PROJET DE LOI C-665 C-665 C-665 HOUSE OF COMMONS OF CANADA CHAMBRE DES COMMUNES DU CANADA

Audit de sécurité avec Backtrack 5

mvam: mobile technology for remote food security surveys mvam: technologie mobile pour effectuer des enquêtes à distance sur la sécurité alimentaire

Immobiline DryStrip Reswelling Tray

System Requirements Orion

ColdGuard Bi-PARTING DOOR INSTALLATION INSTRUCTIONS

A web-based multilingual help desk

Introduction au BIM. ESEB Seyssinet-Pariset Economie de la construction contact@eseb.fr

ATP Co C pyr y ight 2013 B l B ue C o C at S y S s y tems I nc. All R i R ghts R e R serve v d. 1

Sun Management Center 3.6 Version 5 Add-On Software Release Notes

Survey on Conference Services provided by the United Nations Office at Geneva

FINAL DRAFT INTERNATIONAL STANDARD

ClearPass A CAS Extension Enabling Credential Replay

Comparing JavaServer Pages Technology and Microsoft Active Server Pages

ACP-EU Cooperation Programme in Science and Technology (S&T II) / Programme de Coopération ACP-UE pour la Science et la Technologie

Solaris 9 9/05 Installation Roadmap

Ready. Set. Go. Pick a spot and plug it in.

Advanced Software Engineering Agile Software Engineering. Version 1.0

STAGE INTERNATIONAL DE KENDO KENDO INTERNATIONAL SEMINAR

Gabon Tourist visa Application for citizens of Canada living in Alberta

Upgrading the Solaris PC NetLink Software

Liste d'adresses URL

Exploring the iplanet Directory Server NIS Extensions

Pierce County IT Department GIS Division Xuejin Ruan Dan King

FACULTY OF MANAGEMENT MBA PROGRAM

Authentication and access control in Sympa mailing list software

«Object-Oriented Multi-Methods in Cecil» Craig Chambers (Cours IFT6310, H08)

HelloWorld SOAP Sample:

"Internationalization vs. Localization: The Translation of Videogame Advertising"

Sun TM SNMP Management Agent Release Notes, Version 1.6

RLC/MAC Uplink Transfer

Service Level Definitions and Interactions

Scrubbing Disks Using the Solaris Operating Environment Format Program

Brazil + JDBC Juin 2001, douin@cnam.fr

Machine de Soufflage defibre

General Certificate of Education Advanced Level Examination June 2012

Direct AC Wiring Option Installation Guide

Transcription:

JOSY «Authentification Centralisée» Paris, 6 mai 2010 CASifier une application Julien Marchal Consortium ESUP-Portail

CASifier une application Introduction Moyens Module Apache CAS (mod_auth_cas) Librairie PHP (phpcas) Filtre Java Module PAM (Pam_cas) Problèmes courant

Introduction Quelques principes Le serveur CAS doit être accessible Les applications doivent maintenir des sessions Les applications doivent pouvoir gérer les connexions SSL avec le CAS

Module Apache CAS (mod_auth_cas) Module Apache 2.x L identifiant utilisateur se retrouve dans REMOTE_USER Ne gère pas le logout

Module Apache CAS (mod_auth_cas) LoadModule auth_cas_module modulesn2/mod_auth_cas.so <IfModule mod_auth_cas.c> CASVersion 2 CASDebug Off CASValidateServer Off CASLoginURL https://auth.univ.fr CASValidateURL https://auth.univ.fr/servicevalidate CASCookiePath /var/cas/ CASTimeout 7200 CASIdleTimeout 3600 CASCacheCleanInterval 1800 </IfModule>

Module Apache CAS (mod_auth_cas) <IfModule mod_auth_cas.c> AuthName "Authentification centrale" AuthType CAS </IfModule> require user uid1 uid2

Module PHP > 4.2 Librairie PHP (phpcas) Extension curl Extension openssl Extension DOM (xml pour PHP4) Extension Zlib (PHP4) Gère le logout Gère la récupération d attribut (SAML)

Librairie PHP (phpcas) <? include_once('cas.php'); phpcas::client(cas_version_2_0, 'auth.univ.fr',443,''); phpcas::handlelogoutrequests(true, array("auth.univ.fr")); phpcas::setnocasservervalidation(); phpcas::forceauthentication(); echo phpcas::getuser();?>

Filtre Java 5 Filtres : Authentication Filter Validation Filter HttpServletRequest Wrapper Filter Assertion Thread Local Filter Single Sign Out Filter 1 Session Listener : SingleSignOutHttpSessionListener

Filtre Java Authentication Filter Va intercepter les clients et les renvoyer au serveur CAS si il ne sont pas déjà authentifiés <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://auth.univ.fr/login</param-value> </init-param> </filter>

Validation Filter Filtre Java Va intercepter les tickets et les valider auprès du CAS <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://auth.univ.fr</param-value> </init-param> <init-param> <param-name>servername</param-name> <param-value>http://application.univ.fr</param-value> </init-param> </filter>

Filtre Java HttpServletRequest Wrapper Filter Va mettre à disposition l identifiant utilisateur dans HttpServletRequest.getRemoteUser () <filter> <filter-name>cas HttpServletRequest Wrapper Filter</filter-name> <filter-class> org.jasig.cas.client.util.httpservletrequestwrapperfilter </filter-class> </filter>

Filtre Java Assertion Thread Local Filter Va mettre à disposition l identifiant utilisateur dans un Thread local pour les classes ne pouvant pas accéder à HttpServletRequest <filter> <filter-name>cas Assertion Thread Local Filter</filter-name> <filter-class> org.jasig.cas.client.util.assertionthreadlocalfilter </filter-class> </filter>

Single Sign Out Filter <filter> Filtre Java Va intercepter les demandes de logout <filter-name>cas Single Sign Out Filter</filter-name> <filter-class>org.jasig.cas.client.session.singlesignoutfilter</filter-class> </filter> SingleSignOutHttpSessionListener Va surveiller les sessions utilisateurs afin de délogguer lors de l expiration <listener> <listener-class> org.jasig.cas.client.session.singlesignouthttpsessionlistener </listener-class> </listener>

Module PAM (Pam_cas) Pluggable Authentication Modules Est utilisé dans les mecanismes n-tiers (imap, ftp, )

Module PAM (Pam_cas) application cliente login/password login/ticket application cliente login/password login/password application serveur pam_ldap pam_pwdb pam_cas ticket Annuaire LDAP /etc/passwd serveur CAS

Module PAM (Pam_cas) Pour un serveur imap par exemple : /etc/pam.d/imap auth sufficient /lib/security/pam_cas.so -simap://imap.univ.fr -f/etc/pam_cas.conf auth sufficient /lib/security/pam_ldap.so auth required /lib/security/pam_pwdb.so shadow nullok account required /lib/security/pam_pwdb.so shadow nullok

Module PAM (Pam_cas) Pour un serveur imap par exemple : /etc/pam.d/imap auth sufficient /lib/security/pam_cas.so -simap://imap.univ.fr -f/etc/pam_cas.conf auth sufficient /lib/security/pam_ldap.so auth required /lib/security/pam_pwdb.so shadow nullok account required /lib/security/pam_pwdb.so shadow nullok

Module PAM (Pam_cas) /etc/pam_cas.conf host auth.univ.fr urivalidate /proxyvalidate ssl off debug off trusted_ca /Cert/mycert.pem

Des questions? http://www.ja-sig.org/wiki/display/casc/home http://www.ja-sig.org/wiki/display/casc/mod_auth_cas http://www.ja-sig.org/wiki/display/casc/phpcas http://www.esupportail.org/consortium/espace/sso_1b/tech/cas/cas_pam. html