Table des matières
CASsification d'un dokuwiki
Sommaire :
inlinetoc
Installation
Obtenir les scripts
Téléchargez l'archive : dokuwiki_inc.zip
Le dossier inc correspond au dossier inc de votre dokuwiki.
Cette archive contient cas.class.php et une libraire phpCAS modifiée ou j'ai revu la gestion des sessions. Ces modifications seront peut-être prochainement implémentées dans la version officielle.
Décompressez l'archive.
phpCAS
Pour que phpCAS tourne bien vous devez avoir :
- CURL 7.5+ (avec SSL)
- PHP 4.3.1+, PEAR DB
- Apache 2.0.44+
Plus d'info ici.
Quelles que petites modifications
Dans inc/actions.php :
Remplacer :
function act_auth($act){ global $ID; global $INFO;
Par:
function act_auth($act){ global $ID; global $INFO; global $auth; if($auth->cando['login'] && $act == 'login') { $auth->logIn(); }
Configuration
La configuration se passe dans /conf/local.php :
$conf['authtype'] = 'cas'; //.... //---------- CAS config ---------- $conf['auth']['cas']['server'] = 'cas.mdl29.net'; $conf['auth']['cas']['rootcas'] = '/'; $conf['auth']['cas']['port'] = '443'; $conf['auth']['cas']['autologin'] = '1'; $conf['auth']['cas']['handlelogoutrequest'] = '1'; $conf['auth']['cas']['handlelogoutrequestTrustedHosts'] = Array("cas.mdl29", "cas.mdl29", "castest.mdl29", "cas2.mdl29", "cas3.mdl29"); $conf['auth']['cas']['caslogout'] = '1'; $conf['auth']['cas']['logFile']="/var/www/Dokuwiki/inc/auth/phpCAS.log"; //Enable debugging
Cette exemple de configuration prend en compte le Single Sign Out ou “déconnexion globale”, lorsque le CAS envoie des requêtes de déconnexion à l'ensemble des services. Vous listez les hôtes autorisés à envoyer ses requêtes de déconnexion (handlelogoutrequestTrustedHosts).
Par rapport à l'ancienne version j'ai aussi rajouté un mode de debogage, il vous suffit de préciser l'emplacement d'un fichier de log pour l'activer.
Rédigé par Benjamin Bernard
Source : http://wiki.cornempire.net/doku.php?id=dokuwikicas:start