21/09/20161 Installation d’un fournisseur d’identités Shibboleth Formation CRU/RENATER 19 et 20 Novembre 2008 Formateurs : Mehdi Hached

Slides:



Advertisements
Présentations similaires
Installation d’un fournisseur d’identités Shibboleth
Advertisements

SRT 2 NTP. Nécessité ● Les ordinateurs utilisent des horloges à quartz – Peu de précision – Tendance à dériver – Parfois plusieurs secondes par jour.
30 oct Installation d’un fournisseur de services Shibboleth Formation CRU 30 octobre 2008, Paris UPMC Formateurs : Vincent Carpier
Présentation de Scribe Votre nouvelle organisation du Réseau Informatique Pédagogique.
Subversion. 2 Subversion : Pour Quoi Faire ? Problèmes de la gestion du code dans un projet – La durée de vie du projet peut être longue : besoin de gérer.
Présentation LabPlus v3. Solution novatrice en Technologies de l’information Solution novatrice en Technologies de l’information Application pour la Gestion.
Accès distant aux ressources documentaires Carole Letrouit SCD Paris Descartes Couperin.
Les profils du SEDA confection de profil avec Agape.
FORMATION Administrateur de site PRODIGE Introduction Eric Bleuzet Philippe Terme Catherine Chamard-Bois.
FORMATION PRODIGE Aspects techniques Chistophe BOCQUET (CPII/DOO)
1 Administration ESCO-Portail Les environnements numériques de travail Administration du socle de l'ENT Les applications.
Développement d'applications Web avec le framework PHP Symfony 2 Mathieu Peltier (Mercator Océan - CNRS) (UMS 831, Observatoire Midi-Pyrénées)
Logiciel Assistant Gestion d’Événement Rémi Papillie (Chef d’équipe) Maxime Brodeur Xavier Pajani Gabriel Rolland David St-Jean.
Séminaire EOLE Beaune Septembre 2007 HORUS.
29 Octobre P. 1 SNL Yvelines – projet de site Internet Projet de site internet à l’usage des membres actifs Présentation aux GLS.
Installation De Peakup.  Télécharger le fichier peakup2.4.0.free.zip  Décompresser le fichier extrait sur une Directory de votre choix  Créer un lient.
Nouveautés Version 4.1 et mai 2017.
Les commandes externes
« Mon compte partenaire » 1er services en ligne : CDAP et HAPPS
Thomas Hofer Secure-it Valais - 17 février 2017 HES-SO Sierre
Comment Sécuriser Le Système d’information de son entreprise
Expérience de l’Université de Boumerdes
JT12-RSI mars 1999 Délégation aux systèmes d'information
Séminaire Novembre 2006 Zephir : Déploiement et supervision des serveurs Eole.
Séminaire EOLE Dijon octobre 2010
Les Bases de données Définition Architecture d’un SGBD
NuFW, un parefeu authentifiant
Page 4-3 Le programme InSQL Configure
Initiation aux bases de données et à la programmation événementielle
Séminaire EOLE Dijon Octobre 2010
SECURITE DU SYSTEME D’INFORMATION (SSI)
Javadoc et débogueur Semaine 03 Version A16.
Principes de programmation (suite)
Asynchronous Javascript And Xml
Virtualisation d’applications mobiles dans un réseau de Cloudlets
Configuration de routes Statiques Flottantes
1ers pas des utilisateurs migrés
Présentation du projet FederID ■ ■ ■
Jobs ATLAS sur la grille
Vie et mort des comptes utilisateurs
Présentation des EJB Enterprise Java Beans.
Notion De Gestion De Bases De Données
Création Et Modification De La Structure De La Base De Données
PROGRAMMATION INFORMATIQUE D’INGÉNIERIE II
SRT3 LDAP.
Guide Utilisateur. Guide Utilisateur.
DATA WEARHOUSE 1ère année LA: Technologies systèmes d’information
Programmation Android Bases De Données, SQL-lite
Bureau distant sur Windows Vista /2008 Server
Techniques de diffusion
Programmation Android Première application Android
Observatoire de la Sécurité des Systèmes d'Information et des Réseaux
EdiTIC Journée Dev Ouest – 15 mars 2018.
Suivi Campagne Principe
5 Analyse avec Designer d'Oracle
SIMM : Réflexions sur les besoins en référentiels.
Module 13 : Implémentation de la protection contre les sinistres
7 Contraintes d’intégrité en SQL
Comprendre le fonctionnement d’un réseau
03- Evaluation Access 2003 Cette évaluation comporte des QCM (1 seule réponse) et des Zones à déterminer dans des copies d’écran.
Echange de Données ALE / I-DOC Pierre-Olivier GREGOIRE Julien HUYNH
Seminar v TELEBIB2 TELEBIB2.
Module 5 : Gestion de l'accès aux ressources à l'aide de groupes
Active Directory Services
État d’avancement REGARDS
Les différents modes de démarrage de Windows
Patrick Poulingeas (CRI de Limoges)
La dématérialisation des marchés publics
Les données structurées et leur traitement
Convention 20 septembre 2019.
Transcription de la présentation:

21/09/20161 Installation d’un fournisseur d’identités Shibboleth Formation CRU/RENATER 19 et 20 Novembre 2008 Formateurs : Mehdi Hached Olivier Salaün

21/09/20162 Partie 1 Introduction

21/09/20163 Objectif de la formation Installer un fournisseur d'identités Shibboleth, découvrir son paramétrage Ne couvre l'installation d'un service opérationnel

21/09/20164 Tour de table...

21/09/20165 Demo de Shibboleth

21/09/20166 Logistique 9h30h : Introduction : déroulement du TP 12h30 : Pause déjeuner sur place 14h : Présentation Shibboleth 2 : Reprise du TP 16h : Conclusion 17h30 : Fin du TP

21/09/20167 Les postes de travail Postes eleveX.cines.fr OS= CentOS 5.2 Compte eleveX / ciren11 Compte root / cirenadmin

21/09/20168 Le support Version papier Version électronique –Permet le copier/coller –Variable monidp.univ-test.fr => eleveX.cines.fr –Attention « lecture seule » => save as... Un peu directif, mais bon... Prenez votre temps et parcourez les docs en ligne

21/09/20169 Déroulement du TP 1- Installation des pré-requis Java, Tomcat, certificats, NTP 2- Installation de l'IdP Shibboleth 3- Configuration Shibboleth et AJP Connexion LDAP, CAS 5- Tests Le mystère de l'attribute push...

21/09/ Quelques révisions... IdP Fédération Méta-données Shibboleth Attributs utilisateurs Redirections HTTP SAML

21/09/ Idp = Fournisseur d'Identités

21/09/ Fédération Définit un ensemble constitué de –Fournisseurs d'identités –Fournisseurs de services Résout le problème des relations bilatérales Les membres de la fédérations –Partagent un niveau de confiance –Ont un cadre technique –Partagent des méta-données

21/09/ Méta-données Un fichier de méta-données par fédération Gérées par l'opérateur de la fédération Chaque entrée comprend : –Identifiant du fournisseur, URLs, certificat, profils supportés, contacts, description,... Exemple : –

21/09/ Shibboleth Logiciel « open source » : Adapté contexte enseignement / recherche Deux briques distinctes : –fournisseur d'identités –fournisseur de services Logiciels très (trop ?) configurable Le TP couvre l'installation la brique IdP Shibboleth en version 2.1 (publiée en juillet 2008)

21/09/ Attributs utilisateurs Un fournisseur de services a besoin d'authentifier des utilisateurs Le fournisseur d'identités lui transmet un profil utilisateur –Composé d'attributs Attributs issus d'un référentiel (LDAP) –Norme SuPann

21/09/ Transmission des attributs utilisateurs SP IdP LDAP SAML Applicatio n attribute- resolver.xml attribute-filter.xml attribute-policy.xml mail urn:oid: mail schéma inspiré d’une présentation de Switch

21/09/ Redirections HTTP Usage intensif des redirections HTTP –Comme CAS L'utilisateur est redirigé en permanence –Application > SP > WAYF > IdP > CAS > IdP > SP > Application Plugins Firefox utiles : –Web developer –Tamper data

21/09/ SAML Protocole entre le SP et l'IdP –Assertions d'authentification –Assertions d'échange d'attributs –Signature et chiffrement Version 2.0 supportée par Shibboleth 2.x –Interopérabilité possible avec d'autres produits

21/09/ Les briques logicielles IdP Apache mod_ssl mod_prox y Tomcat Servlet idp shibboleth Java casclient certificat clef privée AC de test AJ P SP de test du CRU Serveur CAS de test Annuaire De test SAML

21/09/ Services de Test Fédération de Test du CRU –Enregistrement automatique –Ouvert à tout SP/IdP –Pas d’usages en production SP de test –Utilisable avec n’importe quel IdP de test –Fonctionnement : liste les attributs reçus Référentiel de test –Un seul enregistrement : etudiant1 Serveur CAS de test –Mot de passe=uid

21/09/ Utilisation des certificats Certificats pour sécuriser Apache –Fournis par le CRU pour les besoins du TP –Chapitre 2.3 du support Certificat utilisés par Shibboleth (SAML) –Certificat + clef privée –Générés à l'installation de Shibboleth Certificat du CRU –Vérification de la signature des méta-données –Téléchargé au chapitre 4.2.2

21/09/ A vous de jouer...

Nouveautés, différences avec la version 1, rétrocompatibilité, gestion des attributs Partie 2 Présentation de Shibboleth version 2

publié en mars 2008 en version 2.0 remplacé pour correction de bogues et alerte de sécurité par la version 2.1 Implémente plusieurs mode d’authentification de façon native Nouvelle gestion des attributs et de leur filtrages Meilleure gestion des journaux de log pour un meilleur débogage Shibboleth 2 IdP

Installation améliorée, toujours en ligne de commande Génération automatique d’une clé privée et d’un certificat auto-signé à l’installation Génération des métadonnées de l’IdP accessible directement à l’URL exemple.org/idp/profile/Metadata/SAML Le fichier relying-party.xml est automatiquement peuplé des bonnes données attribute-resolver.xml et attribute-filter.xml basiques mais quasiment prêts à l’emploi Installation de l’IdP 2

L’IdP a vu ses fichiers de configuration grandement modifiés :  relying-party.xml : fichier principal  Configuration des “profiles”, méta-données, certificats, paramètres de sécurité  attribute-resolver.xml : extraction et préparation des attributs  attribute-filter.xml : politique de filtrage des attributs  logging.xml : configuration des différents fichiers de log (process, access, et audit)  login.config : réglages de l’authentification JAAS  handler.xml : contrôle les points de contact de l’IdP  internal.xml & service.xml : Pour des utilisations très avancées de l’IdP Nouveaux fichiers de configuration

La gestion des journaux 1/2 Toutes les erreurs sont journalisées Trois fichiers de logs, tous dans le répertoire $IDP_HOME/logs – idp-process.log – le même que l’IdP 1.3, permet de vérifier le processus IdP – idp-access.log – Fichier à la Apache permettant de journaliser les accès à l’IdP – idp-audit.log – Fichier facilement “parsable” journalisant les infrormations transitantpar l’IdP: type de requêtes, attributs fournis, etc.s

La gestion des journaux 2/2 Le fichier logging.xml éditable pendant l’exécution de l’IdP La gestion des journaux est améliorée (lisibilité, contenance) et optimisée (exécution) Toujours déconseillé de passer en TRACE ou DEBUG en production Le niveau TRACE permet d’avoir une trame utile pour le débogage en cas d’erreurs d’exécutions

L’IdP peut fonctionner selon plusieurs profils : Ils définissent la manière dont l’IdP et les SP s’échangent les assertions de sécurités (authentification et attributs). Dans la fédération du CRU nous avons limité l’utilisation au « attribute push ». L’IdP envoi les attributs avec l’assertion d’authentification le tout est chiffré (necéssite les certificats des SP dans les méta-données) Shibboleth 2, adopte cela par défaut mais par rétro-compatibilité il peut faire du « attribute pull » et « artifact » L’Idp 2 introduit donc 5 profils supplémentaires aux trois pré-existant extraits de la norme SAML 2 Les « profils » Shibboleth IdP

/Status /Metadata/SAML /Shibboleth/SSO /SAML1/SOAP/AttributeQuery /SAML1/SOAP/ArtifactResolution /SAML2/POST/SSO /SAML2/POST-SimpleSign/SSO /SAML2/Redirect/SSO /SAML2/SOAP/AttributeQuery /SAML2/SOAP/ArtifactResolution Les « profils » - Liste

Rétro compatibilité et interopérabilité L’IdP 2 garde les anciens profils Permet une totale rétro-compatibilité avec les versions 1.3.X (pas antérieures) La norme SAML 2 permet l’interopérabilité avec d’autres implémentations de cette norme (Oracle, BEA, Sun…)

L’IdP implémente nativement 4 modes : REMOTE_USER : Un serveur en Frontal positionne cette variable consommée par l’IdP Identifiant/Mot de passe : Branchement de l’IdP grâce à l’interface JAAS (Java Authentication and Autorisation Service) à un annuaire LDAP ou à Kerberos Adresse IP Existence d’une session utilisateur valide (prolongement d’un SSO)  Dans ce TP : Branchement à un serveur SSO-CAS Les modes d’authentification native

Fichiers de configurations plus nombreux et mis par spécialité Validation de la majeur partie de la configuration au démarrage évitant ainsi des exécutions avec des configurations erronées Le JNDIDataConnector disparaît au profit d’une normalisation de type : – La brique Shibboleth IdP dans son fonctionnement naturel en “attribute push” chiffré – Nécessite la présence des certificats des SP dans les méta-données Différences avec les versions 1.x

Configuré dans attribute-resolver.xml On trouve 4 éléments : – Data connector : sert à extraire les données depuis des sources (LDAP, SGBDR) ‏ – Attribute definition : défini les attributs extrait à partir des sources – Attribute encoder : transforme les attributs en XML – Principal connector : lie un “SAML name identifier” à un “principal” Seuls les attributs déclarés dans ce fichier peuvent “quitter” le resolver de l’IdP Les connectors et les definitions peuvent récolter des informations les uns des autres La définition des attributs

S’occupe du branchement à une source de données En cas d’échec un autre Data connector peut prendre le relais Les types de connectors : – Static : déclaration d’une donnée statique – RelationalDatabase : connection à une base SQL – LDAPDirectory : connection à un annuaire – StoredId : crée et retrouve un identifiant depuis une base SQL – ComputedId : crée un identifiant unique en faisant un hash de la requête et du timestamp DataConnector

member urn:exemple.org:entitlement:entitlement1 urn:mace:dir:entitlement:common-lib-terms <resolver:DataConnector id="monLDAP" xsi:type="LDAPDirectory” ldapUrl="ldap://ldap.exemple.org” baseDN="ou=people,dc=exemple,dc=org” principal="uid=monservice,ou=system” principalCredential=“monServicePassword"> DataConnector - exemple

Déclare un attribut avec un identifiant unique dans le fichier du resolver Selon des valeurs qu’un attribut recueille, on peut actionner une nouvelle source d’attributs Il existe plusieurs définitions possible : – Simple: extrait tel quel d’une source – Scoped : ajoute un « scope » à un attribut – Script : manipule/modifie un attribut – RegexSplit : manipule un attribut selon des expressions régulières – … Attribute Definition

Le fichier attribute-filter.xml défini les politiques de fourniture d’attributs aux SP. La syntaxe des « filtering policies » a changé Un fichier de filtering peut contenir plusieurs politiques d’attributs Seuls les attributs contenant une ou plusieurs valeurs autorisées sont fournis Les valeurs permises se basent sur des concordances établies à l’aide de règles booléennes Par défaut, ce fichier est pauvre en directives et en « deny all » Le filtrage en sortie des attributs

Les fonctions de concordances : – Opération booléennes : AND, OR, NOT, ANY – Chaines de caracteres et expressions régulières : AttributeIssuerString, AttributeRequesterString, PrincipalNameString, AuthenticationMethodString, AttributeValueString, AttributeScopeString – Écriture de scripts possible (utilisation avancée) Le filtrage – attribute-filter.xml

Expérimentations L’utilitaire en ligne de commande AACL.sh permet de faire des tests sur la validité de configuration du resolver et du filtre

Redémarrages de Tomcat Pas de redémarrage nécessaire pour les fichies : internal.xml, service.xml, logging.xml et login.config Les autres nécessitent redémarrage de Tomcat : il ne faut pas recharger de la servlet par le « manager » !

21/09/ Partie 3 Conclusion de la formation Passage en production Présentation fédération RENATER

21/09/ Installer un IdP dans votre organisme Comme en TP, mais aussi : –Configuration des attributs –Nommer un shibmaster –Haute disponibilité Utilisation des méta-données de la « vrai » fédération –Laquelle ?

21/09/ La fédération du CRU –Service opérationnel depuis janvier 2006 –Le CRU gère –L’enregistrement des entités –La distribution des méta-données –Le support aux sites –Les membres –IdP : 49 établissements d’enseignement supérieur –SP : 54 ressources, principalement éditeurs de contenus + ressources régionales

21/09/ Les 49 fournisseurs d'identités ENS LSH ENSAIT IUFM de Bretagne IUFM de Montpellier INPL PRES Nancy Université UTC Université Jean Monnet Université Paul Cézanne Université d'Angers Université d'Artois Université de Bordeaux 4 Université de Bourgogne Université de Bretagne Occidentale Université de Bretagne Sud Université de Grenoble 1 Université de Grenoble 2 Université de Grenoble 3 Université de Haute Alsace Université de La Rochelle Université de La Réunion Université de Lille 1 Université de Lille 2 Université de Limoges Université de Lyon 1 Université de Montpellier 1 Université de Montpellier 2 Université de Montpellier 3 Université de Nancy 1 Université de Nancy 2 Université de Nantes Université de Nice Université de Paris 1 Université de Paris 5 Université de Paris 7 Université de Pau Université de Perpignan Université de Poitiers Université de Provence Université de Reims Université de Rennes 1 Université de Rennes 2 Université de Rouen Université de Technologie de Troyes Université de Toulouse 1 Université de Valenciennes Université de la Méditerrannée Université du Littoral Université du Maine

21/09/ La fédération RENATER Fédération à spectre élargi : Enseignement Supérieur + Recherche Notion d'organismes membres et d'organismes partenaires Une migration de la fédération du CRU vers la fédération Renater est en cours de préparation Entrée en phase pilote au 8 Décembre 2008 Ouverture prévue en production au mois de Février 2009

21/09/201647

21/09/ La fédération Renater Un cadre technique : –Shibboleth 1.3 et 2.x –Utilisation Supann 2008 –Profile attribut Push –URL pour les IdP –OID pour les attributs Evolutions à venir –Distribution auto des attribute-filter.xml –Monitoring des IdPs

21/09/ Workflow d'inscription dans la fédération RENATER Activation du service dans SAGA –par responsable technique –désigne 2 responsables fédération Signature charte fédération –par responsable administratif (profil président d'université ou délégation de signature) Inscription technique –par responsables fédération (nommés) –description technique du service

21/09/ A qui s'adresser ? –À partir du 8 décembre –D'ici là –Et jusqu'à février 2009 Support / information –Liste