05.02.2015 ESUP-Days #19 11
ESUP-Days
#19
05.02.2015
Paris
05.02.2015
Packaging Esup CAS
“Déploiement d’un serveur CAS”
Lu...
05.02.2015 ESUP-Days #19 2
“Recette” à suivre pour adopter CAS
 Utiliser la dernière version stable du serveur CAS
 Ajou...
05.02.2015 ESUP-Days #19 3
Historique des versions du serveur
https://www.apereo.org/tags/cas-product-release
https://gith...
05.02.2015 ESUP-Days #19 4
Prérequis pour déployer un serveur CAS
 Java JDK 6  7
 Conteneur de Servlets (Apache Tomcat ...
05.02.2015 ESUP-Days #19 5
Comment déployer un serveur CAS ?
 Installation d'une QuickStart Esup ou Jasig
 Idéal pour dé...
05.02.2015 ESUP-Days #19 6
2008-2011 : Esup cas-toolbox v3
Maven WAR Overlay
2012-2014 : Esup cas-toolbox-new v3
2015 : Es...
05.02.2015 ESUP-Days #19 7
2008-2011 : Esup cas-toolbox v3
 Déploiement d'un serveur CAS dans un Tomcat existant
 Simpli...
05.02.2015 ESUP-Days #19 8
2008-2011 : Esup cas-toolbox v3
 Téléchargement de cas-toolbox.X-Y.tar.gz
 Copie de build.sam...
05.02.2015 ESUP-Days #19 9
2008-2011 : Esup cas-toolbox v3
 Interface utilisateur avec le thème Esup (v3.4.7)
05.02.2015 ESUP-Days #19 10
Maven WAR Overlay
 Gestion locale des sources contenant seulement les dépendances, les
config...
05.02.2015 ESUP-Days #19 11
Maven WAR Overlay
 Serveur CAS 3.4.1x
 https://subversion.renater.fr/cas-toolbox/branches/ca...
05.02.2015 ESUP-Days #19 12
Esup cas-toolbox-new v3 et v4
 Possibilités offertes par le nouveau packaging
 Déploiement d...
05.02.2015 ESUP-Days #19 13
Esup cas-toolbox-new v3 et v4
cas-toolbox-core (ajouts et pré-configurations propres à Esup)
...
05.02.2015 ESUP-Days #19 14
Esup cas-toolbox-new v3 et v4
 git clone https://github.com/EsupPortail/cas-toolbox-new.git
...
05.02.2015 ESUP-Days #19 15
Esup cas-toolbox-new v3 et v4
 Interface utilisateur avec le thème Esup
05.02.2015 ESUP-Days #19 16
CAS v4.0.x
 Quelques nouveautés introduites par la version 4.0
 Nouveau protocole CAS v3
 R...
05.02.2015 ESUP-Days #19 17
Démonstration du packaging
Esup cas-toolbox-new v4
Packaging Esup CAS
“Déploiement d’un serveu...
05.02.2015 ESUP-Days #19 18
Démonstration
 Quickstart uPortal 4.1
 C:/portal
 Apache Maven 3.0.4
 Apache Tomcat 7.0.32...
05.02.2015 ESUP-Days #19 19
Démonstration
 Statistiques : cas/stats.jsp
 Monitoring : cas/status
 Gestion des services ...
Prochain SlideShare
Chargement dans…5
×

Esupdays 19 : Packaging Esup Cas

1 087 vues

Publié le

Déploiement d'un serveur CAS
(nouveau packaging Esup cas-toolbox v4)
présenté lors des Esup-Days 19 & Apereo Europe (5-6 février 2015) : https://www.esup-portail.org/wiki/pages/viewpage.action?pageId=439255076

Publié dans : Technologie
0 commentaire
1 j’aime
Statistiques
Remarques
  • Soyez le premier à commenter

Aucun téléchargement
Vues
Nombre de vues
1 087
Sur SlideShare
0
Issues des intégrations
0
Intégrations
4
Actions
Partages
0
Téléchargements
7
Commentaires
0
J’aime
1
Intégrations 0
Aucune incorporation

Aucune remarque pour cette diapositive

Esupdays 19 : Packaging Esup Cas

  1. 1. 05.02.2015 ESUP-Days #19 11 ESUP-Days #19 05.02.2015 Paris 05.02.2015 Packaging Esup CAS “Déploiement d’un serveur CAS” Ludovic Auxepaules -- Direction des Systèmes d’Information de l’Université Pierre et Marie Curie ludovic.auxepaules@upmc.fr https://github.com/auxepaul/ https://github.com/EsupPortail/cas-toolbox-new
  2. 2. 05.02.2015 ESUP-Days #19 2 “Recette” à suivre pour adopter CAS  Utiliser la dernière version stable du serveur CAS  Ajouter la « charte graphique » de l’établissement  Ajouter la configuration de l’établissement  Comment s’authentifient les utilisateurs ?  Quels sont les attributs utilisateurs et d’où proviennent-ils ?  Quelles sont les applications autorisées à utiliser CAS ?  …  Assembler, tester et déployer  Maintenir à jour les clients CAS dans les applicatifs
  3. 3. 05.02.2015 ESUP-Days #19 3 Historique des versions du serveur https://www.apereo.org/tags/cas-product-release https://github.com/Jasig/cas/releases/  CAS Server 4.0.1 Janvier 2015  CAS Server 4.0 Mai 2014 recommandée en juin 2014  Patchs de sécurité pour SAML2 (e.g. Google Apps), attaques HTTP  CAS Server 3.5.3 Janvier 2015  CAS-server-security-filter 1.0 Aout 2014 2.0 Novembre 2014  CAS Server 3.5.2.1 Avril 2014  CAS Server 3.4.12.1 Avril 2014  CAS Server 3.5.2 Février 2013 recommandée en juin 2013 ...  CAS Server 3.5.0 Juillet 2012  CAS Server 3.4.12 Mai 2012 recommandée en juin 2012 …  CAS Server 3.4.7 Mars 2011 …  CAS Server 3.4.0 Mai 2010 …
  4. 4. 05.02.2015 ESUP-Days #19 4 Prérequis pour déployer un serveur CAS  Java JDK 6  7  Conteneur de Servlets (Apache Tomcat 6  7)  Apache Maven 3  Serveur HTTP Apache 2.x avec mod_proxy_ajp (Optionnel)  Certificats SSL (pour la mise en production) “CAS installation is a fundamentally source-oriented process”
  5. 5. 05.02.2015 ESUP-Days #19 5 Comment déployer un serveur CAS ?  Installation d'une QuickStart Esup ou Jasig  Idéal pour découvrir rapidement CAS, tester, réaliser des formations, démos…  Modification du code source d’une version stable  Copie d’un WAR et modifications dans le webapps Tomcat  Plus difficile pour faire les montées de version du serveur CAS  Maven WAR Overlay  Méthode actuellement recommandée pour déployer CAS (Apereo)  Esup cas-toolbox et Esup cas-toolbox-new  Facilite le déploiement en centralisant certains éléments de configuration et en préconfigurant certains modules de CAS
  6. 6. 05.02.2015 ESUP-Days #19 6 2008-2011 : Esup cas-toolbox v3 Maven WAR Overlay 2012-2014 : Esup cas-toolbox-new v3 2015 : Esup cas-toolbox-new v4 (en développement) Packaging Esup CAS “Déploiement d’un serveur CAS”
  7. 7. 05.02.2015 ESUP-Days #19 7 2008-2011 : Esup cas-toolbox v3  Déploiement d'un serveur CAS dans un Tomcat existant  Simplification de la configuration de CAS  Personnalisation du serveur CAS  Assemblage de distributions Quickstart  Dernière version sur sourceSup et basée sur CAS v3.4.7  https://sourcesup.renater.fr/frs/?group_id=401&release_id=1461  Documentations associées  https://www.esup-portail.org/wiki/display/CAS/CAS+Toolbox+- +Package+d%27installation+de+CAS+V3  https://wiki.jasig.org/display/CAS/CAS-toolbox#CAS-toolbox-Overview  https://subversion.renater.fr/cas-toolbox/tags/3.4.7-1/README  Packaging Esup basé sur Ant et le serveur CAS v3 du Jasig
  8. 8. 05.02.2015 ESUP-Days #19 8 2008-2011 : Esup cas-toolbox v3  Téléchargement de cas-toolbox.X-Y.tar.gz  Copie de build.sample.properties en build.properties  Saisie de la propriété deploy.path property dans build.properties  Copie de config.sample.properties en config.properties  Configuration de config.properties (et ajout des personnalisations dans le répertoire custom)  Initialisation en lançant la commande ant init  Déploiement dans le Tomcat existant en lançant ant deploy  Lancement de Tomcat et ouverture de l'adresse http://localhost:8080/cas  Exemple de déploiement dans un Tomcat existant GT Esup Authentification, 27 juin 2014
  9. 9. 05.02.2015 ESUP-Days #19 9 2008-2011 : Esup cas-toolbox v3  Interface utilisateur avec le thème Esup (v3.4.7)
  10. 10. 05.02.2015 ESUP-Days #19 10 Maven WAR Overlay  Gestion locale des sources contenant seulement les dépendances, les configurations et les personnalisations spécifiques à l’établissement  Fichier pom.xml (Project Object Model) décrivant le projet, ses dépendances, les tâches automatisées…  Fichiers .java, .properties, .xml,… ajoutés ou modifiés  Attention aux déplacements de fichiers et répertoires lors des montées de version  Reconstruction du WAR à déployer dans Tomcat  A partir de la version d’origine du serveur CAS définie dans pom.xml  Avec toutes les configurations et les personnalisations en superposition (remplacement des fichiers d’origine)  Documentations associées  https://wiki.jasig.org/display/CASUM/Best+Practice+- +Setting+Up+CAS+Locally+using+the+Maven+WAR+Overlay+Method  http://jasig.github.io/cas/current/installation/Maven-Overlay-Installation.html  Principes à retenir lors du déploiement
  11. 11. 05.02.2015 ESUP-Days #19 11 Maven WAR Overlay  Serveur CAS 3.4.1x  https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/  https://github.com/EsupPortail/cas-toolbox-new/tree/v3.4.x  Serveur CAS 3.5.x  https://github.com/UniconLabs/simple-cas-overlay-template  https://github.com/Unicon/unicon-cas-overlay  https://github.com/leleuj/cas-overlay-3.5.x  Serveur CAS 4.0.x  https://github.com/leleuj/cas-overlay-demo  https://github.com/UniconLabs/simple-cas4-overlay-template  https://github.com/EsupPortail/cas-toolbox-new/tree/v4.0.x  Exemples connus pour le serveur CAS
  12. 12. 05.02.2015 ESUP-Days #19 12 Esup cas-toolbox-new v3 et v4  Possibilités offertes par le nouveau packaging  Déploiement d’un serveur CAS dans un Tomcat existant  Simplification et centralisation de la configuration  Fichier config.properties, HandlersDiscover  Pré-paramétrage des ajouts Esup  Thème, LDAP, Logging, TraceMe, Stats, BlockAttack, SAML 1.1…  A activer : Memcached, Rest, Kerberos, LPPE, Clearpass…  Pas de quickstart construite avec Ant  Possibilité d'utiliser jetty en localhost pour “tests” (envisagé)  Restructuration et simplification du projet esup cas-toolbox (J. Marchal)  https://subversion.renater.fr/cas-toolbox/branches/cas-toolbox-new/  Svn2git de la branche svn et sauvegarde sur github (L. Auxepaules) https://github.com/auxepaul/cas-toolbox-new  Packaging basé sur Maven
  13. 13. 05.02.2015 ESUP-Days #19 13 Esup cas-toolbox-new v3 et v4 cas-toolbox-core (ajouts et pré-configurations propres à Esup)  src/main – java – webapp  pom.xml cas-toolbox-custom (changements de l’établissement)  src/main – webapp  pom.xml etc (guides HowTo, et exemples de « scripts ») config.sample.properties (exemple de configuration en localhost) pom.xml  Meilleure différenciation des ajouts Esup (cas-toolbox-core), des changements de l'établissement (cas-toolbox-custom)  Architecture du packaging : « Double Overlays »
  14. 14. 05.02.2015 ESUP-Days #19 14 Esup cas-toolbox-new v3 et v4  git clone https://github.com/EsupPortail/cas-toolbox-new.git  git checkout v4.0.x  Copie de config.sample.properties en config.properties  Saisie de la propriété deploy.path dans config.properties  Configuration de config.properties  (Ajout des personnalisations dans le répertoire cas-toolbox-custom)  Initialisation et déploiement dans Tomcat : mvn clean package  Lancement de Tomcat et ouverture de l'adresse http://localhost:8080/cas http://localhost:8080/cas-management  Exemple de déploiement dans un Tomcat existant
  15. 15. 05.02.2015 ESUP-Days #19 15 Esup cas-toolbox-new v3 et v4  Interface utilisateur avec le thème Esup
  16. 16. 05.02.2015 ESUP-Days #19 16 CAS v4.0.x  Quelques nouveautés introduites par la version 4.0  Nouveau protocole CAS v3  Renvoi des attributs de l'utilisateur en plus de l'identifiant  Meilleure modularité  e.g. interface web de gestion des services séparée du serveur  Remaniement des API d'authentification  Mise à jour des dépendances  e.g. remplacement de Spring LDAP par Ldaptive  Améliorations de l’interface Utilisateur (“Responsive”)  Code non rétro-compatible avec les versions 3.x  Difficile de recopier directement certaines configurations et modifications directement d’une version 3.x vers 4.x http://jasig.github.io/cas/current/
  17. 17. 05.02.2015 ESUP-Days #19 17 Démonstration du packaging Esup cas-toolbox-new v4 Packaging Esup CAS “Déploiement d’un serveur CAS”
  18. 18. 05.02.2015 ESUP-Days #19 18 Démonstration  Quickstart uPortal 4.1  C:/portal  Apache Maven 3.0.4  Apache Tomcat 7.0.32  Scripts de lancement de tomcat dans apache-tomcat-7.0.32/bin – startup.bat et shutdown.bat  Java JDK 1.7  Variables d’environnement  JAVA_HOME, JAVA_OPTS, CATALINA_OPTS  Path : MAVEN_HOME%bin  Git : Github pour Windows  Environnement de demonstration sous Windows
  19. 19. 05.02.2015 ESUP-Days #19 19 Démonstration  Statistiques : cas/stats.jsp  Monitoring : cas/status  Gestion des services : cas-management  Quelques pages

×