Authentification Microsoft

:discourse: Hébergé par nous ? Ce plugin est disponible sur nos plans Business et Enterprise. Connexions Amazon et Microsoft | Discourse - Discussion civilisée

:discourse2: Résumé Permet aux utilisateurs de se connecter avec leurs comptes Microsoft (également appelés comptes Office 365 ou Microsoft 365)
:open_book: Guide d’installation Ce plugin est intégré au noyau de Discourse. Il n’est pas nécessaire d’installer le plugin séparément.

Résumé

L’authentification Microsoft permet aux utilisateurs de se connecter à votre forum Discourse en utilisant leurs comptes Microsoft (également connus sous le nom de comptes Office 365 ou Microsoft 365). Cela simplifie le processus de connexion pour les organisations qui utilisent des services Microsoft.

Fonctionnalités

  • Permet aux utilisateurs de se connecter avec leurs identifiants Microsoft
  • Prend en charge les configurations multi-locataires et mono-locataire
  • S’intègre avec Microsoft Azure Active Directory
  • Simplifie l’inscription et la connexion des utilisateurs

Configuration

Pour configurer l’authentification Microsoft pour votre forum Discourse :

  1. Rendez-vous sur la page d’enregistrement d’application du portail Azure

  2. Enregistrez une nouvelle application :

    • Choisissez un nom (généralement le nom de votre site)
    • Sous “Types de comptes pris en charge”, sélectionnez l’option la plus permissive adaptée à vos besoins

  3. Ajoutez votre site en tant qu’URI de redirection pour Web avec ce format :

    • https://votre.forum.discourse/auth/microsoft_office365/callback

  4. Enregistrez vos modifications

  5. Rendez-vous dans Certificats et secrets dans le menu latéral gauche et cliquez sur Nouveau secret client

    • Ajoutez une description simple
    • Choisissez 24 mois sous “Expire” (note : vous devrez le renouveler)
    • Copiez la Valeur (il s’agit du Secret de l’application) et enregistrez-la pour les paramètres de votre plugin
  6. Rendez-vous dans Aperçu (dans la barre latérale gauche) et copiez l’ID d’application (ID client)

  7. Dans votre zone d’administration Discourse, allez dans Paramètres et recherchez “microsoft auth”

  8. Entrez l’ID d’application et le Secret des étapes précédentes

Problèmes d’authentification mono-locataire

Si vous avez configuré votre application Microsoft en tant que single_tenant, certains utilisateurs peuvent rencontrer des problèmes lors de la connexion. Cela se produit parce que les e-mails utilisés pour la connexion sont considérés comme non fiables, et le système ne peut pas les lier automatiquement aux comptes Discourse existants.

Pour résoudre ce problème, les utilisateurs peuvent :

  1. Rechercher la section “Vous avez déjà un compte ?” en bas du formulaire d’inscription
  2. Cliquer sur le lien fourni pour suivre le processus de liaison de compte
  3. Compléter les étapes d’authentification pour connecter leur compte Microsoft à leur compte Discourse existant

Une autre option consiste à activer le paramètre de site microsoft auth email verified, si les administrateurs sont certains que tous vos utilisateurs ont des e-mails vérifiés. Cela garantit que les utilisateurs de retour avec des comptes existants ne créent pas de comptes en double lors de l’authentification via Microsoft.

Options de configuration supplémentaires

Vous pouvez mettre à jour tous les paramètres d’authentification Microsoft en visitant la zone Admin > Paramètres et en recherchant “microsoft auth”.

Pour les configurations mono-locataire, vous aurez besoin de votre ID de locataire, que vous pouvez trouver dans les propriétés du locataire du portail Azure.

Ressources supplémentaires

25 « J'aime »

J’ai des problèmes avec ce plugin.
Pourriez-vous me donner quelques conseils ?

Comme je me suis encore fait avoir lors de la mise à jour de ma configuration pour ce plugin, j’ai créé cette PR :

Le problème est que le panneau de l’application Microsoft propose trois champs qui ressemblent à ce qu’il faut pour le « Secret » : Client ID, Value et Secret ID. Sans indication, j’ai choisi le mauvais à deux reprises, et je soupçonne que je ne suis pas le seul !

J’ai juste essayé ce plugin et il ne fonctionne pas pour un locataire unique.

Pourquoi ?

option :client_options,
             site: "https://login.microsoftonline.com",
             authorize_url: "/common/oauth2/v2.0/authorize",
             token_url: "/common/oauth2/v2.0/token"

Le mot « common » est le problème.
Il semble qu’il faille le remplacer par l’ID du locataire pour un locataire unique.
Si vous avez un compte MS, vous trouverez votre ID de locataire ici : Microsoft Azure

Je n’ai pas encore essayé de faire le changement moi-même. Peut-être que je le ferai.
Sinon, quiconque envisage d’utiliser ceci pour un locataire unique, n’essayez pas, cela ne fonctionnera pas actuellement.

Voir l’image ci-jointe ci-dessous comme exemple du type d’erreur que vous obtiendrez.
image

Ok, je n’ai jamais codé avec Ruby, et cela fait quelques années que je n’ai pas codé et travaillé sur des choses techniques. Mais, c’est fait. Et cela fonctionne maintenant aussi pour les configurations Single Tenant.

3 « J'aime »

Désolé pour le très très long suivi, la PR ci-dessus est maintenant fusionnée !

2 « J'aime »

Youpi !

Ma première contribution à la communauté. Pas la dernière, je pense. :slight_smile:

2 « J'aime »

:partying_face: Ce plugin est désormais inclus dans le cœur de Discourse dans le cadre de Bundling more popular plugins with Discourse core. Si vous auto-hébergez et utilisez le plugin, vous devez le supprimer de votre app.yml avant votre prochaine mise à niveau.