Intégration de GRR dans un serveur LCS

LCS (http://lcs.ac-caen.fr/) est un serveur de communication développé par l'équipe Académique TICE de Caen et déployé dans l'ensemble des lycées et collèges de l'académie, ainsi que dans de nombreux autres établissements de France.

Depuis la version 1.9.3, GRR est prévu pour s'intégrer sur une serveur LCS.

Intégration de GRR dans un serveur LCS

La mise en place de GRR sur un serveur LCS peut se faire de deux façons : automatique ou manuelle.

1) Mise en place automatique à l'aide du plugin (recommandé)

Connecté en admin sur le serveur LCS, il vous suffit d'installer le plugin LCS (voir documentation LCS). Il se peut que le plugin LCS ne soit pas basé sur la dernière version de GRR. Dans ce cas, voir plus bas ce qui concerne la mise à jour de GRR.

Dans le panneau d'administration de GRR, une page « configuration SSO » permet de modifier le statut par défaut dans GRR (« usager » ou « visiteur ») des élèves et des « non-élèves » (professeurs et administratifs).

2) Mise en place manuelle (expert)

Cette procédure nécessite une assez bonne connaissance du système LCS et se décompose en plusieurs étapes que nous ne développerons pas entièrement dans ce document :

a) Installation dans le répertoire « /usr/share/lcs/ ».

Les modules applicatifs de LCS sont en général installés dans le répertoire « /usr/share/lcs/ » :

b) Installation dans le répertoire « public_html » d'un utilisateur « grr ».

Une autre façon d'installer GRR consiste à créer un utilisateur du groupe « Profs » ayant le nom « grr ». Le chemin d'accès à l'application est alors du type : « http://mon-site-lcs.fr/~grr/ » :

c) Activation de la prise en charge de l'environnement LCS

Dans le panneau d'administration de GRR, une page « configuration SSO » permet d'activer la prise en charge de l'environnement LCS. L'activation consiste à choisir le statut par défaut des élèves et des « non-élèves » (professeurs et administratifs) authentifiés (« usager », « visiteur » ou « ne pas importer »).

d) Mettre en place un lien vers GRR

Contrairement à l'installation automatique (plugin), l'installation manuelle de GRR sur un serveur LCS ne fournit pas automatiquement l'icône « grr » dans la partie « Applications » de LCS. Nous ne détaillerons pas ici les différentes façons de personnaliser le serveur LCS afin de mettre à la disposition des utilisateurs dans l'espace LCS, un lien vers GRR.

3) Mise à jour automatique de GRR

Connecté en admin sur le serveur LCS, il vous suffit de procéder à une mise à jour par le plugin LCS (voir documentation LCS) si elle existe !

4) Mise à jour manuelle de GRR

Il se peut qu'une nouvelle version de GRR soit disponible sur le site de GRR et que le plugin de mise à jour ne soit pas disponible. Dans ce cas, vous pouvez mettre à jour GRR manuellement :

5) Paramétrage de GRR

a) Le fichier « config.inc.php »

Dans le menu « administration », la page « configuration générale » permet de configurer un grand nombre de paramètres.

Attention : en plus de ceux-ci, d'autres paramètres de configuration de GRR, moins courants, sont à votre disposition dans le fichier « config.inc.php » (consulter la documentation de GRR). La modification de paramètres présents dans ce fichier est évidemment plus délicate car elle suppose l'accès à ce fichier qui est normalement présent dans le répertoire du type « /usr/share/lcs/Plugins/Grr/include » (dans le cas d'une installation par le plugin).

Ce fichier « config.inc.php » contient des paramètres très importants et il convient de l'examiner en détail. Toutes les indications nécessaires à la configuration de ce fichier sont disponibles dans la documentation complète ainsi que dans le fichier lui-même.

Parmi ces paramètres, deux sont particulièrement importants dans le cas d'une intégration de GRR dans LCS :

b) Type d'accès à GRR

L'administrateur a le choix entre deux types d'accès à l'application GRR :

c) La variable use_function_mysql_real_escape_string

Au moment où cette documentation est écrire, la version de PHP des serveurs LCS est inférieure à 4.3.0. Or, GRR utilise la fonction « mysql_real_escape_string() » qui n'est disponible qu'à partir de la version 4.3.0 de PHP. Pour que GRR fonctionne dans un environnement LCS, il est donc nécessaire de positionner la variable $use_function_mysql_real_escape_string à "0" (zéro).

Attention : la valeur par défaut dans le cas d'une installation manuelle est $use_function_mysql_real_escape_string = 1.

Fonctionnement

1) Généralités

Lorsque GRR est intégré à un serveur LCS, deux types d'utilisateurs peuvent cohabiter :

Dans la table « grr_utilisateurs » un champ (« source ») indique le type d'authentification de l'utilisateur : « local » ou « ext » (c'est-à-dire ici « LCS »).


2) Cas d'un utilisateur authentifié sur LCS

Concrètement, quand un utilisateur authentifié sur LCS accède à GRR :


A tout moment, chaque utilisateur a accès à la gestion de son compte pour modifier ses paramètres personnels, propres à GRR (paramètres par défaut, langue, ...), stockés dans la base locale de GRR.

Lorsqu'un utilisateur se déconnecte de LCS, la session GRR est automatiquement détruite et l'accès à GRR (en tant qu'utilisateur connecté) est impossible.

Cette procédure de déconnexion automatique est une fonctionnalité des plugins de LCS. Néanmoins, même si GRR est intégré manuellement à LCS, une procédure interne à GRR assure également la déconnexion de GRR lorsqu'un utilisateur se déconnecte de LCS.

3) Cas d'un utilisateur local

Un utilisateur local, non présent dans l'annuaire LDAP de LCS peut se connecter à GRR à l'adresse du type : « http://monserveur.fr/Plugins/Grr/login.php » (dans le cas d'une installation avec plugin).

La possibilité de créer des utilisateurs locaux est intéressante pour permettre l'accès à GRR à des personnes ne disposant pas de compte LCS.

Il est fortement recommandé de créer un administrateur local de GRR. En effet, certaines mises à jour de GRR nécessite un accès particulier pour effectuer la mise à jour.

Gestion des utilisateurs

Dans la partie administration, la page « utilisateurs » permet d'accéder à la gestion des utilisateurs.

La plupart des fonctionnalités disponibles sur cette page ne sont pas propres au cas d'une installation dans un environnement LCS. En revanche, les deux procédures suivantes concernant uniquement le cas de GRR dans un environnement LCS :

1) Nettoyage de la base locale

Lorsqu'un utilisateur est définitivement supprimé de la base LCS, celui-ci peut rester présent dans la base locale de GRR. Au fil des mois, la base locale peut ainsi contenir un certain nombre d'informations obsolètes.

La procédure « Nettoyage de la base locale » recherche et supprime de la base locale de GRR, les utilisateurs LCS qui ne sont plus présents dans la base LCS : ces utilisateurs sont effacés de la table locale « grr_utilisateurs » ainsi que des tables de liaison le cas échéant.

2) Mise à jour de la base locale

Lorsqu'un utilisateur est ajouté à la base LCS, celui-ci peut immédiatement se connecter à GRR, comme cela a déjà été dit plus haut. A sa première connexion à GRR, l'utilisateur est ajouté à la base locale de GRR et apparaît alors dans la liste des utilisateurs.

De même lorsque des informations concernant le nom, le prénom ou l'adresse email d'un utilisateur sont modifiés dans la base LCS, les modifications sont automatiquement répercutées dans la base locale de GRR à la prochaine connexion de l'utilisateur à GRR.

L'administrateur peut néanmoins forcer une mise à jour des utilisateurs de la base locale de GRR.

Cette procédure effectue les deux opérations suivantes :

Insertion dans la base locale de GRR des utilisateurs LCS qui ne sont pas présents localement.

Mise à jour de la base locale de GRR à partir des informations de la base LCS, pour les utilisateurs déjà présents.

3) Quelques remarques

Le fait de rendre inactif un utilisateur a pour effet de rendre son accès à GRR impossible, qu'il s'agisse d'un utilisateur authentifié LCS ou bien d'un utilisateur local.

Dans le panneau d'administration de GRR, la « configuration SSO » permet de spécifier le statut par défaut dans GRR (« usager » ou « visiteur ») des élèves et des « non-élèves » (professeurs et administratifs). Il s'agit du statut qui est attribué à chaque utilisateur lors de sa création dans la base locale.

Il est ensuite possible à tout moment de modifier le statut d'un utilisateur particulier : « usager », « visiteur » ou « administrateur » (voir la documentation complète de GRR pour plus de détails).