Chapitre 2 Configuration

2.1 Authentification

L'utilisation du frontend d'authentification CAS se fait en modifiant la variable $freedom_authtype dans le fichier config/local-dbaccess.php :

<?php
 
$freedom_authtype = 'cas';
 
$freedom_authtypeparams['cas'] = array(
    'cas_version' => 'CAS_VERSION_2_0',
    'cas_server'  => 'localhost',
    'cas_port'    => 8443,
    'cas_uri'     => '/cas-server-webapp-3.4'
);

Paramètres requis :

cas_version
Version du serveur CAS : '1.0', '2.0', 'CAS_VERSION_1_0', 'CAS_VERSION_2_0'.
cas_server
Adresse, ou nom DNS, du serveur CAS.
cas_port
Port de connexion du serveur CAS.
cas_uri
URI d'accès à la racine de l'application d'authentification CAS.

Paramètres optionnels :

cas_debug
yes pour activer le mode débug avec les messages stockés dans /tmp/phpCAS.log (défaut no).
cas_sslversion
Forcer une version de SSL (2 ou 3) pour la connexion au serveur CAS (autonégocié par défaut).
cas_servercacert
Permet de spécifier le chemin d'accès d'un certificat pour la validation du certificat du serveur CAS (par défaut le certificat du serveur CAS n'est pas vérifié).

2.2 Création d'utilisateurs à la volée

Dynacase CAS ne fournit pas les informations/attributs de l'utilisateur (nom, prénom, adresse e-mail, etc…), par conséquent la création d'utilisateurs à la volée nécessite d'utiliser un « provider » Dynacase. Ce provider permet à Dynacase d'interroger le backend d'authentification et de récupérer les informations concernant l'utilisateur.

Dans le cas d'un serveur CAS qui repose sur une base LDAP (ou Active Directory), on peut utiliser le module Dynacase NetworkUser qui fournit un provider capable d'interroger un serveur LDAP ou ActiveDirectory.

Pour configurer le module Dynacase NetworkUser et son provider freedomNu : voir la documentation de Dynacase NetworkUser.

Exemple de configuration du fichier config/local-dbaccess.php pour utiliser le provider freedomNu :

<?php
 
$freedom_authtype = 'cas';
 
$freedom_authtypeparams['cas'] = array(
    'cas_version' => 'CAS_VERSION_2_0',
    'cas_server'  => 'localhost',
    'cas_port'    => 8443,
    'cas_uri'     => '/cas-server-webapp-3.4'
);
 
$freedom_authprovider = 'freedomNu';
 
$freedom_providers['freedomNu'] = array(
    'allowAutoFreedomUserCreation' => 'yes'
);