UNIL.2

Portail MyUNIL

Long Title: Portail MyUNIL: délégation de l'authentification et gestion des autorisations (N-tier, VO)
Leading
Organization:
Université de Lausanne
Domain: AAA
Status: ongoing
Start Date: 01.11.2009
End Date: 31.12.2011
Project Leader: A. Roy

MyUNIL est un bureau virtuel, adaptatif, donc dynamique, personnalisé, proposant un accès unifié à diverses sources d’information et services, permettant d’interagir avec d’autres personnes, applications ou contenus pertinents et intégrant les activités administratives et académiques.
Ce projet rassemble des outils - existant jusqu’à présent indépendamment - dans un seul environnement avec un graphisme et une logique unique. Les outils doivent "faire confiance" au portail pour l’authentification avec le mécanisme de délégation. De plus, la gestion des autorisations pour les utilisateurs externes doit être améliorée.


Situation initiale

Le portail MyUNIL donne accès à des outils personnels, outils de groupes, de communication et de recherche.
Certains de ces outils existent indépendamment de MyUNIL:

  • Messagerie
  • Espace disque personnel
  • Dossier académique et administratif
  • Publications
  • Descriptifs et supports de cours
  • Unisciences
  • Agendas

Les utilisateurs peuvent s’y connecter sans passer par MyUnil et se trouvent dans un environnement spécifique.

D’importants développements ont été réalisés avec succès pour rendre le portail MyUNIL compatible AAI et pour mettre en place un système d’autorisation plus fin que les attributs AAI standard.

Objectifs

Le grand intérêt de MyUNIL est de rassembler tout ces outils dans un seul environnement avec un graphisme et une logique unique.
Nous désirons améliorer MyUNIL avec deux techniques innovantes:

  1. la délégation de l’authentification entre deux ressources;
  2. la configuration particulière du SP ou l’utilisation d’une organisation virtuelle (VO) pour la gestion de l’attribut unil-MemberOf (appartenance à des groupes de l’UNIL) pour des utilisateurs internes (Idp de l’UNIL) et externes (autres Idp de la fédération).

Le premier but de ce projet est donc de modifier les modules Shibboleth des applications en jeu afin que le portail n’ait pas besoin de s’authentifier sous l’identité de l’utilisateur. Il faut que les outils "fassent confiance" au portail (délégation de l’authentification), en particulier sur le fait que l’utilisateur a déjà été authentifié. Les outils délèguent au portail l’authentification et il n’est ainsi plus nécessaire de leur transmettre le mot de passe.
Le deuxième but est de modifier le module Shibboleth du portail (SP) afin qu’il fournisse lui-même ces attributs locaux d’utilisateurs externes. Nous aimerions généraliser cela pour nos "Service Provider".

Étapes

Délégation de l’authentification

  1. mettre en place une infrastructure de test, un Idp et deux SP;
  2. modifier l’Idp de test; installer le plugin N-tier;
  3. configurer les divers modules Shibboleth pour introduire la délégation de l’authentification entre l’intranet et MyUnil;
    Tester la délégation de l’authentification: accent sur sécurité, passage correct des attributs, compatibilité des navigateurs, durée des sessions, etc;
  4. ev. contribuer par des développements à l’extension des fonctionnalités du logiciel Shibboleth;
  5. chercher des personnes externes (institution) pouvant participer aux tests. Pour cette institution externe, il s’agira aussi d’avoir un Idp avec le plugin N-tier;
  6. faire des ajustements nécessaires;
  7. implementer le concept validé sur le système de production (idp, MyUnil, intranet);
  8. ev. adapter la configuration des autres outils afin d’utiliser également la délégation.

Gestion de l’attribut unil-MemberOf

  1. modifier le SP Shibboleth sur l’installation de test pour qu’il interroge notre Idp de test pour obtenir l’attribut unil-MemberOf dans le cas des utilisateurs externes (l’attribut swissEdupersonUniqueId sera utilisé comme clé);
  2. modifier de l’Idp de test afin de répondre à ces requêtes;
  3. modifier MyUnil pour ne plus interroger le LDAP;
  4. tester;
  5. mettre en production la configuration;
  6. configurer (standard) pour les autres SP. L’attribut unil-MemberOf pourra être ainsi utilisé de manière plus étendue.