| Sommaire |
|---|
Problématique
Le portail doit pouvoir proposer un canal permettant d'apporter des informations sur la messagerie de l'utilisateur (nombre de mails non lus, ...).
Il est probable que ce canal doive lancer un webmail externe (IMP ?) lorsque l'utilisateur désire utiliser sa messagerie d'une manière plus intensive.
...
Personnalisation du script
| Bloc de code |
|---|
$cas_hostname="auth.univ.fr"; // c'est l'url du serveur CAS
$cas_port=443; // le port d'accès https au serveur CA
$cas_uri=''; // l'uri de base du serveur CAS
$imap_server="mail.univ.fr"; // le serveur imap à tester
$imap_port=143; // le port imap
$imap_box="INBOX"; // le préfixe des boites IMAP
$imap_service="imap://$imap_server"; // le service passé pour la récupération du PT. Doit être identique
// au service paramétré dans pam-cas
|
Le 'service' passé au serveur CAS sera ici implicitement imap://mail.univ.fr. Si cela ne convient pas , écraser la variable $imap_service avec l'URL de service désiré.
Installation du script
Il faut bien sûr en préalable l'installation de phpCAS, avec ses pré-requis.
...
Si un PT est obtenu, mais que la connexion imap de fonctionne pas, redemander un nouveau PT.
En dessous du bouton "Ouvrir une connexion imap avec le PT courant", s'affiche une url du genre :
| Bloc de code |
|---|
https://auth.univ.fr:443/proxyValidate?ticket=PT-168270-aG...&service=imap://mail.univ.fr
|
Tenter de valider 'à la main' ce PT :
Depuis un serveur ayant un acces https vers le serveur CAS (le serveur imap est un bon candidat), lancer :
| Bloc de code |
|---|
wget --ca-certificate=/Cert/ac-racine.pem -O /tmp/cas.log "https://auth.univ.fr:443/proxyValidate?ticket=PT-168270-aG...&service=imap://mail.univ.fr"
|
...
Vous devez obtenir quelque chose comme celà dans le fichier /tmp/cas.log :
| Bloc de code |
|---|
<cas:serviceResponse xmlns:cas='http://www.yale.edu/tp/cas'>
<cas:authenticationSuccess>
<cas:user>vmathieu</cas:user>
<cas:proxies>
<cas:proxy>https://infocri.univ-nancy2.fr/~vmathieu/CAS/casimap.php</cas:proxy>
</cas:proxies>
</cas:authenticationSuccess>
</cas:serviceResponse>
|
Rem : il est possible de remplacer l'option --ca-certificate=/Cert/ac-racine.pem par --no-check-certificate lors du wget ; dans ce cas, un warning sera affiché.
Difficultés coté client imap
...
Un patch modifiant le fonctionnement du cache du démon saslauthd est proposé, permettant d'associer plusieurs 'mots de passe' à un utilisateur.
| Avertissement |
|---|
Une alternative plus simple est d'utiliser la fonctionnalité "cacheDirectory" de la dernière version de esup-pam-cas. |
Annexe : cinématique
Les schémas joints montrent la cinématique de l'authentification imap, dans différents cas.
...