| Sommaire |
|---|
Téléchargement
Université
...
Yale
C'est le module initial. Le principal inconvénient est que le paramétrage se fait 'en dur', avant compilation.
Il est disponible ici :http://www.ja-sig.org/wiki/display/CAS/Yale+CAS+client+distribution
.
Distribution esup-portail
CportailC'est la distribution précédente, modifiée par esup-portail. Ce document en décrit les différences.
Elle est disponible ici :http://sourcesup.cru.fr/frs/?group_id=214&release_id=711
.
Distribution RPM INT Evry
C'est une http://www.ja-sig.org/wiki/display/CAS/RPM+Modules du EvryC'est unedistribution binaire RPMdu package esup-portail, proposée par Jehan Procacci, de l'int d'Evry.
...
Voici l'exemple de config :
| Bloc de code |
|---|
<Directory /> DirectoryIndex index.html index.htm index.php ... </Directory> <Files *.php> SetOutputFilter PHP SetInputFilter PHP </Files> |
Dans cet exemple, index.php ne sera pas 'exécuté' lorqu'on n'est pas encore en 'session mod_cas'.
Il faut remplacer le <Files *.php> par :
| Bloc de code |
|---|
AddType application/x-httpd-php .php |
De la même facon, il faut retirer tout <Files *.php> qui seraient dans la config apache. Par exemple, mod_ssl donne de base :
| Bloc de code |
|---|
<Files ~ "\.(cgi|shtml|phtml|php|php3?)$"> SSLOptions +StdEnvVars </Files> |
il faut le retirer (au moins pour php)
...
Il faut indiquer à Apache de charger le module mod_cas. Ceci se fait par la directive :
| Bloc de code |
|---|
LoadModule cas_module modules/mod_cas.so |
Configuration
La configuration se fait dans un 'container' Directory, ou dans un fichier .htaccess.
Les différents paramètres possibles sont les suivants :
AuthType
...
CASVoir
README.yale
Indique que l'on veut authentifier à l'aide du mécanisme CAS. CASLocalCacheFileVoirREADME
CASLocalCacheFile
Voir README.yale. Facultatif.
C'est le nom (chemin complet) d'un fichier qui va servir au cache local pour le mécanisme de session.
S'il n'est pas spécifié, mod_cas ne gère pas de mécanisme de session (déconseillé).
Par exemple :
| Bloc de code |
|---|
CASLocalCacheFile /tmp/CAScache |
CASLocalCacheSize
FacultatifCASLocalCacheSizeFacultatif.
C'est la taille en nombre d'entrées du cach local de session.
Par défaut : 1000
CASLocalCacheTimeout
CASLocalCacheTimeoutVoir Voir README.yale. Facultatif.
C'est la durée de validité du cache de session, en minutes.
Par défaut, 3600 (une heure)
CASLocalCacheInsecure
CASLocalCacheInsecureVoir Voir README.yale. Facultatif.
Force un cookie 'secure' si Off. Mette à On si on ne désire pas ce type de cookie.
Par défaut, Off
CASEGDFile
CASEGDFileVoir Voir README.yale. Facultatif.
CASLogoutParameter et CASLogoutLocalURL
Pas CASLogoutLocalURLPas documenté. Sert à forcer un logout CAS
CASHost
CASHostAjout Ajout esup-portail. Obligatoire.
C'est le nom de host du serveur CAS
Par exemple :
| Bloc de code |
|---|
CASHost auth.univ.fr |
CASPort
Ajout frCASPortAjout esup-portail. Facultatif
C'est le port d'accès au serveur CAS.
Par défaut, 443. CASLoginURLAjout
CASLoginURL
Ajout esup-portail. Obligatoire
C'est l'url complète de login CAS.
Par exemple :
| Bloc de code |
|---|
CASLoginURL https://auth.univ-nancy2.fr |
CASTrustedCACert
Ajout frCASTrustedCACertAjout
esup-portail. Obligatoire
C'est un nom de fichier complet qui contient le certificat (format PEM) permettant de valider (coté SSL) la requête https de validation de ticket CAS.
Si le certificat du serveur CAS est autosigné, c'est celui-ci qui est présenté.
Si le certificat du serveur CAS a été délivré par une Autorité de Certification, c'est le certificat de l'Autorité racine qui doir être présenté.
Par exemple :
| Bloc de code |
|---|
CASTrustedCACert /Cert/ac-racine.pem |
CASValidate
Ajout pemCASValidateAjout esup-portail. Facultatif
C'est l'uri du serveur CAS utilisée pour faire valider un ticket CAS (en protocole CAS V1)
Par défaut, /cas/validate
CASCookieName
CASCookieNameAjout Ajout esup-portail. Facultatif
C'est le nom du cookie de session mod_cas.
Par défaut,MODCASID CASCookieDomainAjout
CASCookieDomain
Ajout esup-portail. Facultatif
C'est le domaine du cookie de session CAS.
Par défaut, aucun domaine n'est indiqué lors de la création du cookie ; le domaine est donc celui d'accès au serveur virtuel apache. Si le serveur est accédé en "http://www.unserv.univ.fr", le domaine par défaut sera : "www.univ-nancy2.fr".
Exemple d'utilisation :
| Bloc de code |
|---|
CASCookieDomain .unserv.univ-nancy2.fr |
(ceci crée un cookie accessible à tout site dans la hiérarchie deunserv.univ.fr, commewww1.unserv.univ.fr).
CASCookiePath
CASCookiePathAjout Ajout esup-portail. Facultatif
C'est le "path" du cookie de session CAS.
Par défaut, /
CASDebug
CASDebugAjout Ajout esup-portail.
Valeur Valeut booléenne (On ou Off) ; facultatif
Permet d'écrire des traces de debug dans la log d'erreur d'apache.
Ne pas utiliser en production, le volume de log est très important.
...
On veut limiter l'accès à http://exemple.univ-fr/essai
à toute personne authentifiée CAS, et à http://exemple.univ-fr/essai/toto
à l'utilisateur toto
| Bloc de code |
|---|
LoadModule cas_module modules/mod_cas.so ... <IfModule mod_cas.c> CASLocalCacheInsecure On CASLocalCacheFile /tmp/CAScache CASTrustedCACert /Cert/ac-racine.pem CASLoginURL [https://auth.univ.fr] CASHost auth.univ.fr CASPort 443 CASValidate /validate # CASDebug on </IfModule> ... Directory /home/essai> <IfModule mod_cas.c> AuthType CAS AuthName "bases en ligne" Require valid-user </IfModule> </Directory> Directory /home/essai/toto> Require user toto </Directory> |