User Mnet Host

Le bloc User Mnet Hosts (Mes sites du réseau - non standard) est similaire au bloc "Sites du réseau" (Mnet Hosts), mais en ajoutant une gestion individuelle du contrôle d'accès à chaque hôte MNET. En effet, le bloc standard fournit un accès inconditionnel à tous les sites ouverts en SSO dans Moodle, mais ne fournit aucun moyen d'en contrôler l'accès "à la source" (un contrôle d'accès peut être fait à l'arrivée par une fonction technique peu accessible, et surtout destinée à mettre en place des "banissements" exceptionnels). Des champs supplémentaires de profil permettent de contrôler ces accès. Un bloc accessoire (Accès des élèves au réseau / Group Network) permettra de déléguer facilement l'attribution des accès à des rôles non administrateur.

Le bloc dispose de ses outils propres pour générer les champs supplémentaires de profil nécessaire au contrôle des accès dans le réseau.

Limites

A l'étape actuelle de développement, cacher simplement le lien de départ vers un hôte MNET dans la liste des destinations possibles ne peut être considéré comme suffisant en termes de sécurité. Ce bloc n'est donc pas une porte de sécurité, mais un accessoire pratique d'urbanisation du réseau pour la personnalisation au profil de l'utilisateur.

Une sécurisation plus complète est prévue dans la feuille de route. (contre-requête de vérification)

Evolution Moodle 2

La version Moodle 2 du bloc User Mnet Hosts a apporté deux améliorations majeures :

  • La gestion des liens Mahara, avec une possibilité de déverrouillage total pour cette application
  • Le support de l'authentification MultiMnet (auth/multimnet - non standard), alternative de réseau "total" à Mnet

Pour des raisons de cohérence d'identité de comtpes utilisateur, un administrateur local primaire (compte "admin") ne peut jamais utiliser les portes, sauf si la clef de configuration $CFG->user_mnet_hosts_admin_override est marquée.

Note : Il n'existe qu'un cas fonctionnel pour lequel cette possibilité est utile : Laisser l'administrateur d'une seule des plates-formes du réseau agir en tant qu'administrateur global du réseau. On active cette clef dans sa plate-forme de "résidence", et on lui donne les droits d'administrateur de site dans toute instances Moodle.

Prérequis

Aucun prérequis obligatoire.

Prérequis optionnel : Lorque des droits d'accès aux différentes plates-formes du réseau sont incluses dans le profil, il est préférable de s'assurer que les profils sont cohérents pour un utilisateur donné dans toutes les plates-formes qu'il visite. Ceci n'est pas possible en standard pour deux raisons :

  • Les champs additionnels de profil ne sont pas transférés par un passage MNET
  • Le profil MNET est verrouillé et non éditable.

Le patch commenté dans le fichier README et discuté dans le ticket MDL-24549 propose une modification simple pour synchroniser les valeurs des champs de profil additionnel lors d'un passage réseau (il faut simplement que la définition du champ existe dans les deux plates-formes).

L'application de ce patch permet d'assurer une réplication intégrale du profil dans toutes les plates-formes du réseau MNET.

L'installation du plugin d'authentification Multimnet est un prérequis pour faire fonctionner un réseau MNET en réseau "total"(*).

Installation

L'installation de ce bloc suit la procédure habituelle :

1. Dézippez le bloc dans le répertoire blocks de votre installation Moodle.

2. Naviguez vers Administration -> notifications dans le menu d'administration de site.

Préparation

Pour que le bloc fonctionne, il faut générer un champ de profil pilotant l'accès réseau pour chaque hôte MNET connu dans l'environnement réseau de Moodle. Ces champs peuvent être créés à la main, en suivant les règles de nommage suivantes :

  • le nom du champ doit commencer par "access"
  • le nom du champ se termine par le radical d'hôte, filtré de tout caractère non alphanumérique, et ramené en majuscules

Exemples :

  • pour un Moodle distant : http://clone1.mondomaine.fr => accessCLONE1
  • pour un Moodle distant : http://sub1.sous-domaine.mondomaine.fr => accessSUB1SOUSDOMAINE

Les champs sont de préférence à ajouter à la catégorie définie pour les "champs de contrôle d'accès réseau"

Alternativement, la configuration central du bloc fournir un outillage (Synchroniser les champs de contrôles d'accès) pour générer automatiquement les champs manquants, en fonction de l'analyse de l'environnement MNET.

Réglages

Réglages généraux

  • Accès à l'outil de synchronisation des définitions de champ de contrôle d'accès.
  • Libre accès Mahara : Si activé, alors tout utilisateur peut voir le lien d'accès vers les portefolios Mahara raccordés à Moodle. S'il n'est pas activé, alors Mahara est considéré comme une application réseau comme les autres et subit le contrôle d'accès par utilisateur.

Autre opérations des réglages généraux :

Par défaut, l'accès aux réglages généraux crée une catégorie de champs personnalisés dédiée pour le rangement des champs d'accès réseau, et crée le champ représentent l'accès à la plate-forme Moodle elle-même (self).

Réglages d'instance

Aucun réglage d'instance.

Normal operations

Using a block instance

Just add an instance of this block instead of the standard Mnet Hosts block to limitate the network view to allowed targets.

Giving users access to an host

Edit the profile of users to check or uncheck the access fields matching the hosts you allow the user to see. You might change the custom fields settings for convenience so new users are implicitely allowed or disallowed for a particular host.

See the accessory Group Network block to delegate access configuration to teachers.

Capabilities

  • block/user_mnet_hosts:addinstance: Allows owner of this capability to add an instance in a course or front page
  • block/user_mnet_hosts:myaddinstance: Allows owner of this capability to add an instance in the My page
  • block/user_mnet_hosts:accessall: Access to all joinable nodes unconditionnally (administrators).

Credits

This block is maintained by Valery Fremaux at http://www.mylearningfactory.com

Using projects

Following projects are co-funders of the block

  • Paris Descartes University (FR)
  • ENTLibre 2.0 (ATOS/DEGESCO) (FR)
  • Rectorat de Strasbourg (FR)
  • Région PACA (Académie de Nice) (FR)
  • Région PACA (Académie d'Aix/Marseille) (FR)
  • Groupe ISF (Haute Normandie) (FR)
  • Groupe IGS (FR)
  • Institut Iperia (Haute Normandie) (FR)