administration_plateformes_pedagogiques:lti

Mettre en place une connexion LTI entre deux plateformes Moodle (outil externe)

La fonctionnalité de liaison inter-plateformes LTI permet notamment :

  • l’accès aux cours / activités d'une plateforme “fournisseur de contenus” ;
  • la création automatique de comptes utilisateurs sur la plateforme “fournisseur de contenus” ;
  • l’envoi de notes de la plateforme “fournisseur de contenus” vers la plateforme “consommateur de contenus”.
Pour LTI1.3, voir page officielle : https://docs.moodle.org/402/en/Publish_as_LTI_tool

La mise en place d'une connexion LTI entre deux plateformes nécessite de coordonner les démarches :

  • administratives et juridiques (rédaction et signature de conventions) ;
  • pédagogiques (gestion de la production et de la diffusion des ressources, des droit d'auteurs, à l'image, etc.) ;
  • fonctionnelles et techniques (mise en place de la connexion, tests, résolution des problèmes d'infrastructures) ;
  • logistique (gestion des salles de comodalité, coordination des plannings inter-établissements).

La connexion LTI implique des échanges de données entre les deux sites. En conséquence et en considération de la nouvelle législation sur la protection des données personnelles (RGPD), la signature d'une document précisant les modalités de gestion des données est indispensable. Pour plus d'informations sur ce sujet, contactez le délégué à la protection des données de votre établissement (ou DPO, Data Protection Officier).

Learning Tools Interoperability® (LTI®) est une spécification technologique développée par le consortium IMS Global Learning 1). Elle établit une méthode d'intégration des applications d'apprentissage riches, appelées outils (tools), fournis par les fournisseurs d'outils (tool providers), à des plateformes, tels les systèmes de gestion de l'apprentissage ou LMS 2), appelées consommateurs d'outils (tool consumers). Le LMS peut être Moodle ou toute autre plateforme conforme à LTI comme Sakai.

LTI est un protocole d'interopérabilité qui s'appuie sur les technologies O2auth. Moodle permet d'être client (via le plugin outil externe depuis la version 2.2) mais aussi fournisseur (plugin LTI provider jusqu'à version 3.1, natif après). La version v1.3 de la spécification LTI est intégrée à Moodle v3.7 et suivantes.

Caractéristiques principales d'une connexion LTI :

  • accès à des cours complets ou à des activités individuelles d'un site fournisseur (plugin d'inscription LTI sur le fournisseur et plugin d'outil externe LTI sur le client) ;
  • ouverture de session (création de comptes sur la plateforme fournisseur (plugin d'authentification LTI) ;
  • envoi des notes finales du cours ou de l'activité au consommateur LTI.

(source UMLet : lti_diagram.uxf.zip)

Paramétrage pour qu'une plateforme devienne fournisseur (envoie)

Activer le plugin d'authentification LTI
  1. Aller dans Tableau de bord > Administration du site > Plugins > Authentification > Gestion de l'authentification
  2. Activer LTI
  3. Vérifier que le paramètre “Empêcher la création de compte lors de l'authentification” (authpreventaccountcreation) est désactivé.
Activer le plugin d'inscription LTI
  1. Aller dans Tableau de bord > Administration du site > Plugins > Inscriptions > Gérer les plugins d'inscription
  2. Activer Publication comme outil LTI
Activer le paramètre "Autoriser l'intégration dans un cadre"
L'activation du paramètre allowframembedding dans Administration du site > Sécurité > Sécurité HTTP, c'est-à-dire Autoriser l'intégration de cadre pour que les outils soient affichés dans un cadre plutôt que dans une nouvelle fenêtre, est recommandée quand une plateforme est en mode fournisseur (voir https://docs.moodle.org/3x/fr/Publier_en_tant_qu%27outil_LTI). Cependant, suite aux problèmes rencontrés avec les nouvelles normes de sécurité des navigateurs, nous ne recommandons plus l'usage de ce paramétrage. (voir plus bas le problème de l'authentification indésirable demandée par certains navigateurs).

Paramétrage pour qu'une plateforme devienne client (réception)

Activer le Module d'activité "outil externe"
  1. Aller dans Tableau de bord > Administration du site > Plugins > Modules d'activité > Gestion des activités
  2. Vérifier que Outil externe est bien activé, sinon, activez le.
Définir une clé cliente unique à l'échelle de la plateforme (facultatif)

Définir une clé cliente unique pour la plateforme permet d'éviter la duplication de comptes (voir problème multicompte utilisateurs). Pour cela, vous pouvez mettre une valeur par défaut de la clé cliente avec la méthode suivante :

  • Aller dans Administration du site → Présentation → HTML additionnel → Avant la fermeture de BODY 
  • Ajouter le code suivant : $(“#id_resourcekey”).val(“ValeurADefinir”).prop(“readonly”,true)

Source : groupe de travail L8 du projet hype-13

Rendre un contenu accessible par LTI (coté fournisseur)

  1. Aller dans le menu d'administration de l'espace de cours ou de l'activité à exposer
  2. Choisir Publiés comme outil LTI
  3. Cliquer sur Ajouter
  4. Dans “Nom personnalisé de l'instance” : mettre le même nom que le cours
  5. Dans “Outil à publier”, sélectionnez le cours ou l'activité à partager
  6. “Date de début” et “Date de fin” à remplir si besoin
  7. “Rôle de l'enseignant” : mettre étudiant si l'enseignant distant ne doit pas pouvoir modifier l'espace de cours fournisseur
  8. “Rôle de l'étudiant” : Étudiant
  9. Secret : laisser la clé générée
  10. Synchronisation des notes : Oui
  11. Synchronisation des utilisateurs : Oui
  12. Mode de synchronisation des utilisateurs : Inscrire les nouveaux et désinscrire les utilisateurs manquants
  13. Cliquez sur le bouton Ajouter une méthode.
  14. Copier l'URL de cartouche et le secret pour le transmettre au client.

Ajouter un contenu LTI (coté client)

Méthode complète
  1. Dans l'espace cours concerné, ajouter une nouvelle activité Outil externe
  2. Dans la rubrique “Généraux” :
    • indiquer le nom de l'activité (à destination des apprenants de la plateforme client)
    • cliquer sur “Afficher plus”
    • coller dans le champs URL de l'outil et URL de l'outil sécurisé : l'URL de cartouche ou à défaut l'URL de lancement ;
    • choisir le conteneur de lancement : Nouvelle fenêtre (éviter l'intégration, problème sur l'authentification indésirable dans certains navigateurs)
    • renseigner une clé client de votre choix (si plusieurs connexions LTI entre deux plateformes, toujours choisir la même clé, voir pour plus d’informations à ce sujet le problème des multicomptes utilisateurs) ;
    • dans Secret partagé, coller la clé secrète ;
    • dans Paramètres personnalisés, coller le texte suivante : force_embed = 1 (pour plus d’informations à ce sujet, voir le problème des cours ouverts sur la plateforme fournisseur)
    • laisser les champs “URL de l'icône” et “URL de l'icône sécurisée” vides, ils devraient être automatiquement remplis grâce à l'URL de cartouche (cette URL de cartouche ne fonctionne pas avec certains LMS autre que Moodle).
    • dans outils préconfigurés, conserver Automatique, basé sur l'URL de l'outil sauf si vous avez préconfiguré l'outil LTI au niveau plateforme (c'est une autre procédure côté client non décrite ici).
  3. Choisir les paramétrages de votre choix dans les autres rubriques (Confidentialité, Note, Réglages courants, Restreindre l'accès, etc.)
  4. Surveiller l'apparition d'une coche verte à coté du champs de URL

Méthode à partir d'une sauvegarde applicative .mbz
  • Créer et/ou ouvrir un cours de destination
  • Dans l'administration de l'espace de cours, cliquer sur Restauration
  • Si c'est une première réception, choisir l'option Supprimer le contenu de ce cours, puis restaurer sinon, préférer l'option Fusionner le cours sauvegardé avec ce cours
  • Choisir Inclure les méthodes d'inscriptions
  • En cas de nouveau cours, choisir écraser la configuration du cours
  • Choisir comme correspondance des rôles à restaurer : student → étudiant
  • Aller dans la ou les activité(s) outil externe : ajouter le secret partagé et une clé client (entre deux mêmes plateformes, toujours renseigner la même clé client pour éviter le problème des multicomptes)
  • Inscrire les enseignants avec un rôle restreint de type enseignant non-éditeur (pour qu'ils ne puissent pas modifier la connexion LTI) mais puissent tout de même voir le contenu et consulter les résultats (c'est un rôle qui peut correspondre à un rôle personnalisé local de tuteurs par exemple)
  • Inscrire les étudiants
  • Afficher le cours

Synchronisation des comptes utilisateurs

Lorsqu'un utilisateur, authentifié et inscrit sur la plateforme distante, cliquera sur l'outil externe de sa plateforme (plateforme client), un compte sera automatiquement créé sur la plateforme fournisseur identifié par :

  • un username de type enrol_lti[clé de hashage] ;
  • sa méthode d'inscription.

La synchronisation des utilisateurs s'effectue dans les tâches planifiées par Publier comme outil de synchro des utilisateurs d'outils LTI (\enrol_lti\task\sync_members) qui s'exécute par défaut toutes les 30 minutes.

Lors de la création de la publication LTI sur la plateforme fournisseur, si vous réglez sur oui le paramètre Synchronisation Utilisateurs, vous devriez avoir une inscription automatique de tous les utilisateurs inscrits dans les espaces de cours “clients” de votre ressource LTI. Cependant, il y a certains Moodle chez qui cela ne fonctionne pas. Si ce paramètre est réglé sur non, les utilisateurs seront inscrits seulement quand ils vont arriver dans votre espace de cours de la plateforme fournisseur.

Chaque année, il est possible de désactiver/supprimer ces comptes en masse car ils sont facilement identifiables.

Synchronisation des rôles des utilisateurs

  • L'outil permet de synchroniser les rôles enseignants et étudiants entre les deux plateformes. Cela se paramètre au niveau de la plateforme fournisseur.
  • Dans le cas d’une publication d’une activité, vous verrez des utilisateurs arriver dans la plateforme fournisseur avec un rôle non attribué dans la liste des participants au cours. Cela n’est que partiellement vrai. En effet, les utilisateurs n’ont pas de rôle défini à l’échelle du cours mais seulement au niveau de l’activité publiée. Ainsi, s’ils sont étudiants sur l’activité, ils pourront faire le test et voir les notes remonter sur leur plateforme d’origine mais pas plus. Ils n'auront pas accès au reste de l'espace de cours ni au reste de la plateforme fournisseur.

Synchronisation des notes

Il faut régler les paramètres suivants dans le volet Systèmes distant :

  • Synchronisation des notes : choisir “oui”
  • Nécessite que le cours ou l'activité soit terminée avant de synchroniser les notes : choisir “Non” (indispensable si vous partager le cours entier).

Synchronisation des notes

Si vous voulez que les notes remontent sur le Moodle client, il faut :

  • que le moodle forunisseur l'ait autorisé (voir ci-dessus)
  • dans les paramètre de l'outil externe, volet Confidentialité, cochez Accepter les notes de l’outil.

Identification du service

Nom du service numérique : “Ecampus” Adresse web du service numérique : https://ecampus.unicaen.fr/ Catégorie : formation et évaluation

Description

Finalité principale
  • Assurer la gestion pédagogique des étudiants de l'Université de Caen (activités pédagogiques, forums, rendu des devoirs, QCM, etc.).
  • Préparer des sessions des examens (si besoin).
  • Gérer des épreuves et de l'ensemble des activités d'évaluation en vue de la diplomation des étudiants.
  • Permettre un pilotage pédagogique à partir d'outils de requêtage ou d'édition de données.
  • Justifier de l'assiduité des étudiants (si nécessaire).
  • Produire des statistiques d'utilisation de la plateforme d'enseignement (par les étudiants et les enseignants).
Base légale
  • Méthode de recueil du consentement : signature numérique de la charte d'utilisation de la plateforme + signature numérique d'un accord pour le transfert de données vers la plateforme Ecampus.
  • Stockage du consentement : en base de données pour la signature de la charte d’utilisation et dans une activité dédiée de type sondage pour l'accord de transfert dans chaque espace de cours concerné.
  • Mentions d'informations : l'onglet “vie privée” accessible même non connecté (https://ecampus.unicaen.fr/local/staticpage/view.php?page=rgpd) informe sur le traitement des données. Cette page est citée depuis les pages « Mentions légales » et « Charte d’utilisation » de la même plateforme.

Acteurs

  • Service chargé du traitement : CEMU (Centre d'enseignement multimédia universitaire)
  • Personnes concernées : étudiants et stagiaires de la formation continue de l'université, personnels
  • Destinataires : personnels de l’établissement
  • Sous-traitants : oui pour certains services tiers (Compilatio, Wooclap, Open Badges Factory)

Hébergements des données

  • Datacenter géré par la DSI de l’université, serveur de base de données géré en interne au CEMU.
  • Hébergement externe (SaaS) pour certains services tiers (Compilatio, Wooclap, open badge factory)

Qualification

  • Logiciels source de données : annuaire LDAP, Apogée, ADE
  • Logiciels de traitement de données : Moodle, Piwik, Etherpad, BBB, Compilatio, Wooclap, Open Badge Factory
  • Mesure de sécurité : notamment contrôle d’accès des utilisateurs, mises à jour et correctifs de sécurités, sauvegarde des données, site accessible en https, mise sous contrôle de révision du code de la plateforme, documentation des procédures, surveillance des performances des serveurs, sensibilisation et formation des usagers.

Catégories de données collectées

  • État civil : oui
  • Vie personnelle : seulement si les usagers la renseignent
  • Vie professionnelle : structure de rattachement
  • Information économique : non
  • Données de localisation : seulement les données de connexion (ex : adresse ip, logs), pas de données de localisation
  • Données relatives à la santé : non
  • Données judiciaires : non
  • Données sensibles : non
  • Autre : achèvement d’activités, dates de dépôts des documents, corrections des copies en ligne, messages dans les forums, etc.

Pour accéder à la lite des données personnelles enregistrées, il faut aller dans Administration du site > Utilisateurs > Protection des données et politiques > Registre des données personnelles des plugins.

Coté fournisseur

Concernant les données fournies par l'outil externe de la plateforme client à la plateforme fournisseur : lti_provider (external_location)

  • l'identifiant de l'utilisateur utilisant le contenu LTI (userid et useridnumber) ;
  • le nom complet, prénom et nom de famille de l'utilisateur utilisant le contenu LTI (fullname, firstname et lastname) ;
  • l'adresse de courriel de l'utilisateur utilisant le contenu LTI (email).

Concernant les données générées par la méthode authentification LTI à la plateforme fournisseur Moodle :

  • le plugin d'authentification LTI n'enregistre aucune donnée personnelle.

Concernant les données générées par la méthode d'inscription LTI dans l'espace de cours fournisseur Moodle : enrol_lti_users (database_table) :

  • l'identifiant de l'utilisateur (userid) ;
  • la date et l'heure de l'inscription de l'utilisateur (timecreated) ;
  • la date et l'heure du dernier accès au cours de l'utilisateur (lastaccess) ;
  • la dernière note enregistrée pour l'utilisateur (lastgrade).

Concernant les données enregistrées dans les journaux standards (logstore_standard_log dans database_table) :

  • le nom de l'événement (eventname) ;
  • l'identifiant de l'utilisateur qui a déclenché cet événement (userid) ;
  • l'identifiant d'un utilisateur en lien avec cet événement (relateduserid) ;
  • si l'événement a été marqué comme anonyme (anonymous) ;
  • la date et l'heure de la survenue de l'événement (timecreated) ;
  • l'origine de l'événement (origin) ;
  • l'adresse IP utilisée au moment de l'événement (ip) ;
  • l'identifiant de l'utilisateur réel de l'événement, lorsqu'un utilisateur est masqué (realuserid).

Concernant les données spécifiques générées par la consultation des ressources et la réalisation d'activités :

  • selon activité.

Coté client

Il faut explorer les données générées par l'outil externe (Outil externe / Service LTI)

La publication comme outil LTI n'est pas anodine du point du vue de la protection des données personnelles puisqu'il y a transfert de données personnelles entre les sites fournisseurs et clients. Elle doit donc être encadrée par des procédures visant à respecter le RGPD. Cela amène à limiter les possibilités de publication comme outil LTI côté fournisseur et à limiter les possibilités d’utilisation de ressources LTI côté client.

Côté fournisseur

Les permissions, permettant de publier un espace de cours ou une activité comme outil LTI, activées par défaut au niveau des rôles systèmes “enseignant” et “gestionnaire” dans Moodle, sont :

  • enrol/lti:config : Configurer les instances « Publier comme outil LTI »
  • enrol/lti:unenrol : Désinscrire du cours les utilisateurs

Il convient de ne laisser ces deux permissions qu'aux personnes habilitées à publier une ressource comme outil LTI.

Côté client

Les permissions permettant d'ajouter un outil externe dans un espace de cours sont :

  • mod/lti:addcoursetool : Ajouter des configurations d'outils externes propres à un cours
  • mod/lti:addinstance : Ajouter un outil externe
  • mod/lti:addmanualinstance : Ajouter un outil configuré manuellement
  • mod/lti:addpreconfiguredinstance : Ajouter un outil préconfiguré

Il convient de ne laisser ces permissions qu'aux personnes habilitées à intégrer une ressource comme outil LTI.

L'une des démarches les plus sûres du point de vue de la protection des données consiste à n'autoriser les permissions listées ci-dessus qu'aux gestionnaires de la plateforme (en plus des administrateurs). Attention cependant à un élargissement non souhaité de ces permissions notamment si plusieurs contextes sont possibles pour l'attribution du rôle gestionnaire, notamment au niveau catégories. En ce cas, la création d'un rôle dédié, qui ne donne que les permissions spécifiques à LTI, peut être une solution efficace pour mieux maîtriser les personnes habilitées si vous avez trop de gestionnaires.

La supervision nécessite dans une premier temps l'inventaire des connexions existantes. Voici comment les repérer à partir de l'interface administrateur ou d'une requête en base.

Par l'interface

Côté fournisseur

Vous pouvez accéder à la liste des cours publiés en LTI par l'interface :

  • aller dans Administration du site > Serveur > Tâches > Journaux des tâches programmées
  • filtrer les résultats sur la mot clé enrol_lti
  • consulter le dernier journal de la tâche programmée Publier comme outil LTI de synchro des utilisateurs (\enrol_lti\task\sync_members)

Vous aurez alors la liste des cours qui sont publiés comme outil LTI :

Côté client/consommateur
  • Aller dans Administration > Plugins > Modules d'activité > Gestion des activités
  • Cliquer sur le décompte correspondant à Outil externe
  • Vous accéder à la liste des cours dans lesquels il y a au moins un outil externe

Astuce pour identifier plus facilement les outils externe dans un espace de cours :

  • Activer le mode édition
  • Ajouter le bloc “Activité”
  • Cliquer sur les activités de type “Outil externe”

Identification à partir d'une requête en base :

Par requête

Liste des principales tables concernées en base de données
  • mdl_lti : (coté client) les instances d'outil externe (consommateur de ressources exposées via LTI)
  • mdl_enrol_lti_tools : (coté fournisseur) les ressources partagées (désignée en tant que context)
  • mdl_enrol_lti_users : (coté fournisseur) les utilisateurs (consommateur) distant
Côté client/consommateur

Liste des outils externe d'une plateforme :

SELECT 
	lti.course AS "courseid",
	c.fullname AS "Nom complet de l'espace de cours",
	lti.name AS "Nom de l'activité outil externe",
	lti.toolurl AS "URL de la ressource consommée",
	lti.resourcekey AS "Clé client utilisée"
FROM mdl_lti lti
LEFT JOIN mdl_course c ON c.id = lti.course
;

Notes :

  • ressourcekey est le Consumer key configuré dans l'activité 'outils externe' du client
  • password est le Shared secret configuré dans l'activité 'outils externe' du client
Côté fournisseur

Requête qui liste les ressources publiées avec LTI avec leur lien direct reconstruit pour la plateforme ecampus :

SELECT
	lti.id,
	concat('https://ecampus.unicaen.fr/enrol/lti/tool.php?id=', lti.id) AS url,
	lti.secret,
	ct.contextlevel,
	ct.instanceid,
	c.id AS courseid,
	c.shortname AS cours,
	cm.id AS moduleid_exp,
	concat(m.name, ' n°', cm.instance) AS module_exposé,
	concat('https://ecampus.unicaen.fr/enrol/lti/index.php?courseid=', c.id) AS link
FROM mdl_enrol_lti_tools lti
	JOIN mdl_context ct ON ct.id = lti.contextid 
	LEFT JOIN mdl_course_modules cm ON cm.id = ct.instanceid AND ct.contextlevel = 70
	LEFT JOIN mdl_course c ON 
		(c.id = ct.instanceid AND ct.contextlevel = 50)
		OR (c.id = cm.course AND ct.contextlevel = 70)
	LEFT JOIN mdl_modules m ON m.id = cm.module 
;

Note : l' idde la table mdl_lti corresponds à l'id de la ressource exposée que l'on retrouve au bout de l'URL de la ressource partagée : “https://ecampus.unicaen.fr/enrol/lti/tool.php?id=

Exemple : sous Safari et Chrome, la liaison LTI 1.1/1.2 est bloquée par le navigateur et demande à se connecter, par exemple par le CAS, alors qu'elle devrait être transparente. Pour l’instant (début 2021), avec Firefox, la connexion s’établie correctement.

Cette situation provient d'un blocage par ces deux navigateurs du cookie de session de Moodle (celui qui découle d'un login réussi) dans la circonstance où ce cookie est inter-site. Ce blocage est lié au durcissement des conditions de sécurité du navigateur recommandé au niveau mondial. À ce jour (début 2021), les cookies en situation d'inter-site via l'intégration par iframe avec comme propriété “same-site=none” et “secure” non définie sont bloqués. (same-site=none est nécessaire dans le cadre d'une intégration d'un contenu LTI dans un iframe). Côté client, les conteneurs de lancement “Intégré” et “Intégré, sans les blocs” sont concernés.

Solution : choisir de préférence, côté client, le conteneur de lancement : Nouvelle fenêtre.

Essayer avec l'URL de lancement.

Cette erreur apparaît quand la clé client (ou consumer key) est manquante au niveau de l'outil externe de la plateforme client. La clé client peut être ce que vous voulez, à condition que le champ ne soit pas vide. Il est toutefois préférable de le garder simple et sans caractères spéciaux.

Lorsque vous essayez de vous connecter à une plateforme fournisseur par un lien LTI, le message d'erreur suivant “Exception : Call to a member function out() on string” apparaît.

C'est un problème décrit dans les forums Moodle qui affecte le thème Forson mais qui affecte aussi le thème Boost Campus. Un tracker général a été rédigé pour informer les développeurs des thèmes personnalisés : https://tracker.moodle.org/browse/MDL-66272. Un tracker spécifique pour le thème Boost Campus a été rédigé : https://github.com/moodle-an-hochschulen/moodle-theme_boost_campus/issues/120

Pour palier ce problème, il faut supprimer le favicon personnalisé du thème Boost Campus. Si le favicon est important pour votre institution, il y a moyen de remplacer le favicon par défaut du thème par celui de votre plateforme à cet endroit pour Boost Campus : www/moodle/theme/boost_campus/pix/favicon.ico.

Documentation détaillée du bug et de sa solution palliative : https://git.unicaen.fr/cadiou/moodle/-/issues/27 (accès réservé CEMU).

Lorsque plusieurs liens LTI connectent deux plateformes, il se peut qu'un même utilisateur ait plusieurs comptes créés. Pour que les comptes utilisateurs sur la plateforme fournisseur ne soient créés qu'une seule fois, il faut utiliser la même clé client pour toutes les connexions au niveau de la plateforme client. Il est aussi possible de forcer une clé cliente unique à l'échelle d'une plateforme en l'ajoutant dans le HTML additionnel. (voir plus haut le paragraphe “Paramétrage pour qu'une plateforme devienne client”).

Source : Groupe de travail du projet Hype-13

Si vous avez des cours en accès libre sur votre Moodle, toute personne inscrite par un lien LTI peut potentiellement avoir accès à ces cours.

La navigation dans la plateforme fournisseur et la possibilité d'auto-inscription sont autorisées par défaut dans le protocole LTI aux utilisateurs :

  • avec un rôle étudiant dans le cadre de l'accès à un espace de cours complet (si la publication ne concerne qu'une activité, les fonctions de navigation ne sont pas accessibles) ;
  • avec un rôle enseignant que ce soit dans le cadre d'un accès à un espace de cours complet ou restreint à une activité.

Si vous ne désirez pas que l'auto-inscription soit possible dans les espaces de cours ouverts de la plateforme fournisseur pour les utilisateurs à statut étudiant, il faut :

  • sur la plateforme client, aller dans les paramètres de l'outil externe ;
  • dans le champs intitulé Paramètres personnalisés, coller l'expression force_embed=1 (paramétrage décrit dans la documentation anglo-saxone sur la publication d'outils LTI https://docs.moodle.org/311/en/Publish_as_LTI_tool).

Cela peut avoir plusieurs causes, il faut donc procéder par étapes.

  • Étape 1 : Vérifier côté fournisseur que le paramètre Synchronisation des notes est bien réglé sur oui dans la publication LTI au niveau de l’espace de cours et que les tâches programmées de synchronisation LTI (\enrol_lti\task\sync_grades et \enrol_lti\task\sync_members) sont bien planifiées régulièrement (par exemple toutes les demi-heures).
  • Étape 2 : Créer gratuitement un Moodlecloud et paramétrer une ressource partagée avec LTI (en tant que plateforme fournisseur). Intégrer cette ressource sur votre plateforme et tester la redescente des notes. Si cela fonctionne, retourner vers le fournisseur LTI pour qu'il effectue des vérifications sur sa plateforme. Si cela ne fonctionne pas avec le Moodleclood, poursuivez avec l'étape suivante.
  • Étape 3 : Vérifier si les requêtes http atterrissent sur votre serveur Moodle, sinon c’est sûrement le pare-feu qui bloque le problème.
  • Étape 4 : Si les requêtes sont bien arrivées, vérifier dans votre page infos.PHP si votre serveur API est configuré en FPM/FastCGI. Il a été recensé avec la configuration Apache combinée avec FPM/FastCGI que les requêtes HTTP contenant les informations LTI est incomplète. En effet, cette requête est vidée de la partie Authorization Header qui contient la clé cliente et la note à synchroniser. Pour pallier ce problème il faut rajouter la directive apache : CGIPassAuth On. Il est conseillé de mettre la directive dans votre fichier de configuration moodle moodle.conf qui se trouve dans votre dossier /etc/apache2/sites-available.

Pour en savoir plus au sujet des en-têtes d'autorisations :

Source : Groupe de travail du projet Hype-13 et retour d’expérience pôle plateforme pédagogiques du CEMU de l'université de Caen

Sur une plateforme fournisseur, quand on publie un espace de cours ou une ressources par LTI, si le rôle de étudiant est proposé par défaut comme “Enseignant”, cela peut provenir d'un changement du paramètre etudiant-role-id qui n'est plus à 5 comme par défaut dans une installation Moodle. Par exemple sur Ecampus, le etudiant-role-id est à 16, il n'est donc plus reconnu par le protocole LTI comme le rôle étudiant et l'assimile à celui d'enseignant. Deux choix : soit rétablir le rôle étudiant à 5, mais cela peut avoir de nombreux impacts sur la plateforme ; soit, bien prévenir les enseignants qu'il faut être vigilant sur ce paramétrage.

Pour répondre à cette question, nous présentons quelques cas classiques :

  • Vous ne souhaitez pas que les enseignants des plateformes clientes puissent modifier les ressources de votre espace de cours fournisseur ou leurs paramétrages, alors donnez leur le rôle étudiant.
  • Vous partagez vos ressources à plusieurs plateformes clientes. Dans ce cas, il faut être vigilent avec le RGPD. En effet, vous n'êtes pas autorisé à exposer des données personnelles à des personnes non habilités, par exemple des enseignants d'établissements différents. Mieux vaut par précaution leur donner le rôle étudiant pour protéger les données personnelles de tous.

Pour répondre à cette question, nous présentons quelques cas classiques :

  • Si vous ne voulez pas partager le contenu complet du cours, alors il vaut mieux partager ressource par ressources.
  • Si dans votre plateforme fournisseur, vous avez donné un rôle étudiants aux enseignants des plateformes clientes, alors il peut être intéressant de partager ressource par ressource afin de leur permettre d'avoir un suivi plus fin de l’activité de leurs étudiants. En effet, si vous partager l'espace de cours complet, ils n'auront de leur côté qu'une note correspondant à la note globale du cours de vôtre côté mais pas le détail des notes activités par activités comme vous l'avez dans le carnet de note notamment. Attention dans ce cas à bien mettre la même clé client partout pour éviter le problème du multicompte.

Les collègues de l'université de Rouen vous disent tout ce qu'il faut savoir à ce sujet dans le Webinaire interconnexions des moodle (projet hype-13).

Dans le cas des ressources de type learning apps, comme nous n’avons pas d'accord de co-traitance des données avec le propriétaire de ce site et que nous ne savons pas où et comment sont stockées les données recueillies, mieux vaut dans ce cas :

  • préparer votre activité sur le site internet,
  • l'exporter en format SCORM,
  • la déposer dans la plateforme moodle au format Fichier.

Ainsi, vous aurez votre activité avec les notes s'ils y en as, mais vous n'envoyez pas de données à l'extérieur de l'établissement. Vous serez donc en conformité avec le RGPD.

Pensez à conserver votre compte pour modifier votre appli si besoin car le format d'export SCORM ne permet pas de modifier, seulement d'utiliser.

Conférences et retours d'expériences

Documentations

Ancienne documentation :

Voir la page administration locale technique de LTI (accès restreint CEMU)


1)
consortium à but non lucratif qui regroupe de nombreux acteurs, dont certains très connus (Google, Microsoft, Oracle, Fondation Mozilla, etc
2)
Learning Management Systems
  • administration_plateformes_pedagogiques/lti.txt
  • Dernière modification: il y a 8 semaines
  • de dumontj01