Pages enfant
  • Integration Shibboleth

Objectifs

  • Faciliter l’utilisation de Shibboleth dans le portail
  • Documentation des applications tierces qui seraient impactées (apache)
  • Faire des exemples de configuration
  • Étudier l'utilisation de Shibboleth et Grouper

Participants

  • Pascal Rigaux (Paris 1)
  • Vincent Bonamy (Univ Rouen / UNR RUNN)

Organisation

  • Régularité des points

Avancées

Partie uPortal4 (serveur)

Shibbolethisation d'un uPortal 4.0.4 OK.

Notes de procédure :

Implémentation de la possibilité de Proxy CAS sur N serveurs CAS (en plus de l'authentification Shib) OK

  • Code java et configs RUNN dans le GIT interne au RUNN
  • 1 ou 2 patchs à appliquer sur le code Jasig pour inhiber l'authentification CAS (en gardant la fonctionnalité du Proxy CAS donc)

-> prochaines étapes :

  • pousser le code dans le GIT Esup
  • documenter ce qui ne peut pas être poussé

Partie uMobile (client mobile iOs/Android)

Le client lourd uMobile permet de saisir une fois pour toute son username/password sur son smartphone/tablette.

Au 12/03/2012, 3 méthodes d'authentification ont été développées actuellement dans uMobile :

* authentification locale au portail

* authentification CAS : simulation de l'envoi du formulaire CAS avec le username / password saisis par l'utilisateur

* authentification Shibboleth : simulation de l'envoi du formulaire IDP Shibboleth avec le username / password saisis par l'utilisateur
-> utilise un IDP spécifique configuré dans uMobile (config.js) via la variable SHIB_BASE_URL et préfigure que l'IDP Shibboleth utilise son mécanisme interne pour l'authentification (et non une délégation d'authentification à CAS).

Ainsi il ne permet pas actuellement de s'authentifier en Shibboleth comme on l'entend (et pas non plus évidemment en "shib + cas")

En utilisant une URL qui permet de court-circuiter le WAYF (on y sélectionne alors un IDP spécifique) et en recodant une authentification spécifique CAS + Shib (correspondant à un mixe de CASLogin.js et Shibboleth2Login.js ; cf ci-joint le fichier ShibbolethCasLogin.js ) on y arrive ... presque :

* le bug Titanium suivant  https://jira.appcelerator.org/browse/TC-676 fait que les redirections ne fonctionnement pas correctement sous iOS, l'authentification échoue alors. Ce bug concerne iOS uniquement (et non Android) -> prochaine étape : patcher le code Objective-C Titanium ...

* sur Android, pb : le client http (org.apache.http) utilisé détecte une redirection circulaire (Circular redirect) qui provoque une Exception et donc stope le processus d'authentification + récupération du layout.json de manière authentifiée. On est ici obligé de patcher le code de Titanium qui est ici en java pour Android :  on part des sources de titanium déjà patchées par Jasig, on rajoute la petite ligne qui va bien params.setParameter(org.apache.http.client.params.ClientPNames.ALLOW_CIRCULAR_REDIRECTS, true); on rebuild le package titanium (un peu plus de 8 min), on le fait prendre en compte par Titanium Studio, on rebuild le uMobile ... et ça passe ....

  • Aucune étiquette