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 :

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