Configurations AzureAD pour authentification SAML2

Configurations AzureAD pour authentification SAML2

Configurations EntraID (AzureAD) pour authentification SAML2

Contexte

Ce guide s'adresse aux administrateurs TI qui veulent mettre en place l'authentification SAML2 sur Moodle. Vous y trouverez la démarche dans le portail Azure ainsi que quelques conseils pour la configuration.

ATTENTION
L'activation d'une nouvelle méthode d'authentification dans Moodle peut engendrer de doublons des comptes déjà existants. On peut temporairement activer une nouvelle méthode pour tester la configuration, mais il faut la désactiver tant que les comptes existants n'ont pas été ajustés de façon à être conformes à la nouvelle méthode.

Lorsque vos tests sont concluants, veuillez communiquer avec Collecto pour planifier le déploiement définitif. Des correspondances seront sans doute nécessaires et il faudra modifier en lot la méthode d’authentification de l’ensemble des utilisateurs (par exemple, de DB à SAML2) et gérer les quelques comptes (parfois assez nombreux) de comptes manuels créés au fil du temps dans Moodle.

Installation du plugin SAML2

À votre demande, l'équipe de Moodle-Collecto fera l'installation du plugin auth_saml2

Récupération des données dans Moodle

À partir de la page d'accueil de Moodle, sélectionnez l'onglet Administration du site > Plugins > Section Authentification, Gestion de l'authentification



À la ligne SAML2, dans le tableau des types d'authentification, sélectionnez Paramètres




Sélectionnez Afficher les métadonnées du fournisseur




Copiez les URL de EntityID et la localisation de AssertionConsumerService POST. Ces données seront réutilisées pour la configuration dans Azure.







Configurations dans EntraID


Création de l'application


Dans le portail Azure, Sélectionnez Enterprise applications




Sélectionnez New application


Sélectionnez Create your own application




Un menu contextuel s'affiche.
1. Donnez un nom significatif à votre application 
2. Choisir une application autre que les choix qui s'affichent
3. Appuyez sur Créer




4. Sélectionnez l'option Single sign-on dans le bandeau de gauche
5. Sélectionnez la tuile SAML



Éditez les configurations SAML2  dans la première boîte





C'est le moment de reprendre les données récupérer plus tôt dans Moodle

6. Appuyer sur Ajouter un identifiant pour Identifier (Entity ID) et coller la valeur voulue
7. Appuyer sur Ajouter un identifiant pour le Reply URL (Assertion Consumer Service URL) et coller la valeur voulue
8. Sauvegarder





Mappage des données


Assurez-vous que les données nécessaires dans Moodle sont bien envoyées par l'application





Si des informations sont manquantes, sélectionnez Add new claim



Dans le formulaire
9. Saisissez un nom
10. Sélectionnez un attribut
11. Sauvegarder




À noter!
En sélectionnant Transformation en tant que source, il est aussi possible de transformer des données à l'aide de fonctions REGEX.
Par exemple, pour ne récupérer que la première partie du courriel.

Ajout de groupe

Afin que les utilisateurs puissent utilisez l'authentification SAML2, n'oubliez pas d'autoriser la connexion dans les paramètres Users and groups de l'application Azure






Configuration dans Moodle

Métadonnées XML

L'URL des métadonnées XML doit être récupéré dans la section 3 dans l'application Azure et insérer dans le champ suivant de Moodle

Mappage dans Moodle


L'option Simplifier les attributs permet d'isoler l'identifiant. Il ne sera pas nécessaire d'inscrire au long le schéma en activant cette option.



Atteindre la page de connexion avec la redirection forcée activée

Lors que la redirection est forcée vers l'authentification Microsoft, on peut modifier l'URL afin d'accéder au formulaire de connexion manuel en injectant :

Mot de passe de la clé de certificat privée

Il arrive qu'une valeur s'insère automatiquement dans le mot de passe de la clé de certificat privée. Il est important d'effacer cette information avant d'enregistrer une dernière fois les configurations et d'effectuer les tests de connexion.

Regénérer le certificat

Le certificat de l'authentification expire au bout d'une période déterminer (habituellement 2 ans).  Le renouvellement du certificat est disponible à partir de la page de configuration du plugin SAML2.


 On doit par la suite lancer la tâche programmée "Tâche d’actualisation des métadonnées"





Messages d'erreur

Execption SAML2 : Unable to validate Signature

L'URL pour les métadonnées XML, n'est pas le bon.

AADSTS50105

L'utilisateur n'est pas ajouté au groupe ayant la permission de se connecter à cette application




Solution
Dans Users and groups de l'application Azure, ajouter les groupes correspondants



    • Related Articles

    • Prêt Numérique - Connecter AzureAD / SAML

      La démarche suivante explique comment paramétrer le SSO (Azure) pour permettre une authentification par Microsoft pour Prêt Numérique. Cette démarche doit, en partie, être effectuer par un membre de l'équipe informatique de votre établissement. 1. ...
    • Kanopy - Connecter AzureAD / SAML

      La démarche suivante est à effectuer par un membre de l'équipe informatique de votre établissement. 1. Créer l'application SAML Azure Atteigner le portail Azure via https://portal.azure.com et utiliser la barre de recherche pour trouver le menu ...
    • Configurer SSO pour Koha

      Mise en place de l'application single tenant et mapping des données 1. Accéder au portail Azure Entra id 2. Créer un nouvel enregistrement d'application single tenant, attribuer un nom significatif et laisser l'URI de redirection vide 3. Sous ...
    • Procédure pour créer un service OAuth2 pour l'envoi de courriels

      Contexte Microsoft a publié un article en 2024 à l'effet que l'authentification de base n'était plus disponible pour des services comme l'authentification SMTP (source: ...
    • Code CSS pour l’intranet

      Les codes du présent article permettent de changer l'apparence d'alertes et de textes à différents endroits dans l'Intranet. 0. Configurations Il faut ajouter les codes dans la préférence système IntranetUserCSS. Les changements effectués par ces ...