Authentification CAS

Cette méthode ne peut être utilisée que pour authentifier les utilisateurs sur l'interface Web d'administration. En effet Central Authentication Service (CAS) est basé sur un système de redirections HTTP qui n'est pas supporté par les clients SVN classiques. Le principal avantage de cette méthode est de profiter, à moindre frais, d'une brique de login unique déjà existante au sein de votre institution.

Le pré-requis est de disposer d'un client CAS. Il peut être de deux types :

  • phpCAS : c'est une librairie PHP très simple d'utilisation, c'est la méthode que nous allons décrire
  • mod_auth_cas : c'est un module apache (non disponible en standard dans debian), nous de détaillerons pas cette méthode.

La configuration de phpCAS dans le cadre de SWA est relativement simple, voici comment précéder :

  1. télécharger et décompresser phpCAS :
    wget http://www.ja-sig.org/downloads/cas-clients/php/1.0.1/CAS-1.0.1.tgz
    tar xzf CAS-1.0.1.tgz
  2. régler votre include_path dans votre fichier index.php pour que la librairie puisse être utilisée :
    $delim = PATH_SEPARATOR;
    $classpath = dirname(__FILE__).'/lib/CAS-1.0.1'.$delim;
    $classpath .= ini_get('include_path');
    ini_set('include_path',$classpath);
  3. éditer votre fichier index.php et modifier ceci :
    // indiquez directement le nom d'utilisateur authentifié
    // si vous désirez utiliser un système d'authentification externe
    //$auth_username = 'utilisateur-authentifie';

    par ceci (en adaptant le nom du serveur CAS de votre institution) :

    // authentification depuis le serveur CAS de l'inist
    require_once 'CAS.php';
    phpCAS::client(CAS_VERSION_2_0, 'cas.inist.fr', 443, '');
    phpCAS::setNoCasServerValidation();
    phpCAS::forceAuthentication();
    $auth_username = phpCAS::getUser();
 
auth-cas.txt · Dernière modification: 2009/05/25 13:35 par 91.121.155.127
 
Partenaires : Zeitoun | Jeux Gratuits | Pxxo | Free Chat