Généralités
Installer un fournisseur de services Shibboleth pour gérer des authentifications en fédération avec Esup-Portail
Frontal Apache
- Installer la brique fournisseur de services Shibboleth : Site du CRU
Dans shibboleth.xml, définir un chemin : '''Login'''
Dans la configuration Apache, protéger ce chemin :
<Location /Login> AuthType shibboleth ShibRequireSession On require valid-user </Location>
Serveur Tomcat Esup-portail
Configuration Tomcat
- Dans server.xml, modifier le connecteur AJP pour désactiver l'auth Tomcat :
<Connector port="[CATALINA_JK]" tomcatAuthentication="false"
enableLookups="false" redirectPort="8443" protocol="AJP/1.3" />
Configuration uPortal
- Dans security.properties, ajouter une authentification externe HTTP (basée sur REMOTE_USER) :
## Ajout auth remote pour Shibboleth root.shibboleth=org.jasig.portal.security.provider.RemoteUserSecurityContextFactory
- Dans portal.properties, implémenter la classe RemoteUserPersonManager pour l'interface IPersonManager (permet de récupérer la variable REMOTE_USER) :
# Class name of the concrete IPersonManager implementation to be used # org.jasig.portal.security.PersonManagerFactory.implementation=org.jasig.portal.security.provider.RemoteUserPersonManager
Configuration Esup-portail
- Récupérer les attributs de l'utilisateur : Tiré de http://www.ja-sig.org/issues/browse/PERSONDIR-37
A faire :
- modification de la servlet de login pour récupérer les attributs SHIB_*
- Ajout d'un bean esupPortailRemoteAttributeSource et utilisation dans personDirectory.xml pour mapping avec attributs uPortal