Aller au contenu

S'exercerNiveau 3, Construire60 minutes

Interface de discussion et connexion d'entreprise

Une interface de discussion pour l'équipe, où l'on entre avec son compte Microsoft de l'entreprise, réservée à un groupe, la clé de l'API restant sur le serveur. Une heure de travail sur une entreprise fabriquée : l'inscription dans Microsoft Entra, Open WebUI, les réglages qui ferment la porte, et les variantes LibreChat et Google.

Écrit le 9 octobre 2026 · Vérifié le 9 octobre 2026

Vous saurez

  • Inscrire une application dans Microsoft Entra, avec son adresse de retour
  • Réserver l'accès à un groupe, côté Microsoft
  • Régler Open WebUI pour la connexion d'entreprise seule
  • Vérifier qui entre, et qui reste dehors
Sur cette page
  1. Rappel
  2. L'essentiel
  3. Objectif
  4. Données fournies
  5. Consignes
  6. Critères de réussite
  7. Indications
  8. Correction commentée
  9. Extensions
  10. Lectures suivantes
Rappel de la page précédente

Répondez de tête, puis ouvrez. Déploiement en région européenne

1Votre application tourne chez un hébergeur. Où mettre la clé de l'API ?

Dans les variables d'environnement de l'hébergeur, ou son gestionnaire de secrets ; jamais dans le dépôt envoyé.

2Pourquoi protéger l'adresse de l'application ?

Parce qu'elle est publique : sans contrôle, n'importe qui peut l'appeler et dépenser votre crédit chez l'éditeur du modèle.

L'essentiel
  1. La connexion d'entreprise passe par l'annuaire des comptes : on inscrit l'interface dans Microsoft Entra ID, avec l'adresse où Microsoft renvoie la personne une fois reconnue.
  2. Le tri se fait chez Microsoft : avec « Affectation requise ? » sur Oui, seuls les utilisateurs et les groupes affectés peuvent entrer.
  3. Open WebUI accepte la connexion Microsoft d'un seul locataire, par quatre variables ; la création du compte à la première connexion est fermée par défaut, et un nouveau compte attend qu'un administrateur l'active.
  4. Microsoft déconseille les secrets client en production et recommande un certificat ; la connexion d'Open WebUI se règle avec un secret : il se range comme la clé de l'API, et se renouvelle.
  5. Le choix de l'interface engage une licence : Open WebUI limite le retrait de sa marque à cinquante utilisateurs ; LibreChat et AnythingLLM sont sous licence MIT.
1

Objectif

Mettre en service, pour une entreprise fabriquée de vingt salariés, une interface de discussion où l'on entre avec son compte Microsoft de l'entreprise, sans mot de passe de plus. Seuls les douze membres du groupe IA-Equipe entrent ; un autre salarié, un invité ou un compte Microsoft personnel restent dehors. La clé de l'API du modèle ne quitte pas le serveur. Compter une heure, chez un hébergeur déjà choisi (le déploiement en région européenne).

2

Données fournies

La fiche du projet et la configuration à compléter. Tout est fabriqué ; les adresses en « .example » ne mènent nulle part, et aucune valeur n'est une vraie clé.

  • La fiche du projetWord, 37 Ko · l'entreprise, l'adresse, qui entre, qui reste dehors
    Télécharger
    Lire le document ici

    Exercice de Meridal. L'entreprise, son domaine et ses comptes sont fabriqués pour l'exercice ; les adresses en « .example » ne mènent nulle part.

    Données fournies
    ÉlémentValeur
    EntrepriseAtelier Exemple, vingt salariés
    Annuaire des comptesMicrosoft Entra ID, un seul locataire, celui de l'entreprise
    Adresse de l'interfacehttps://ia.atelier.example
    Qui doit entrerles douze membres du groupe IA-Equipe
    Qui ne doit pas entrerles autres salariés, les invités, tout compte Microsoft personnel
    InterfaceOpen WebUI, dans un conteneur Docker, chez un hébergeur en Europe
    Modèlepar l'API d'un éditeur ; la clé reste sur le serveur
    Donnéesles conversations gardées dans un volume, qui survit aux redémarrages

    Ce que la direction demande

    Une interface de discussion pour l'équipe, où l'on entre avec son compte Microsoft de l'entreprise, sans mot de passe de plus. Personne d'autre que le groupe IA-Equipe ne doit pouvoir y entrer, et la clé de l'API ne doit jamais apparaître dans un navigateur.

    Ce qui est déjà fait

    L'hébergeur est choisi et l'adresse ia.atelier.example pointe vers lui, en HTTPS. L'administrateur de l'interface, la personne chargée de l'informatique, a un compte local créé au premier lancement.

  • La configuration à compléterWord, 37 Ko · dix variables d'Open WebUI
    Télécharger
    Lire le document ici

    Exercice de Meridal. Les valeurs entre chevrons sont à remplacer ; rien ici n'est une vraie clé.

    Données fournies
    VariableValeurÀ quoi elle sert
    WEBUI_URLhttps://ia.atelier.examplel'adresse publique de l'interface
    MICROSOFT_CLIENT_ID<à compléter>l'identifiant de l'application inscrite dans Entra
    MICROSOFT_CLIENT_SECRET<à compléter>le secret de cette application
    MICROSOFT_CLIENT_TENANT_ID<à compléter>l'identifiant du locataire de l'entreprise
    MICROSOFT_OAUTH_SCOPE<à compléter>ce que l'interface demande à Microsoft
    ENABLE_OAUTH_SIGNUP<à compléter>la création du compte à la première connexion
    OAUTH_MERGE_ACCOUNTS_BY_EMAIL<à compléter>la fusion de comptes par adresse électronique
    DEFAULT_USER_ROLE<à compléter>le rôle d'un nouveau compte
    ENABLE_LOGIN_FORM<à compléter>le formulaire de connexion par mot de passe
    OPENAI_API_KEY<la clé de l'éditeur>la clé de l'API, gardée sur le serveur

    Côté Microsoft Entra

    L'adresse de retour à inscrire, et le réglage qui réserve l'application au groupe IA-Equipe, sont à trouver dans les consignes.

Le trajet d'une connexion

  1. 1Le salarié ouvre l'adressehttps://ia.atelier.example
  2. 2L'interface l'envoie chez Microsoftla page de connexion habituelle de l'entreprise
  3. 3Microsoft vérifie le comptedu bon locataire, et affecté à l'application par le groupe IA-Equipe
  4. 4Microsoft le renvoieà l'adresse de retour inscrite, avec son identité
  5. 5L'interface ouvre son comptecréé à la première connexion, avec le rôle prévu
  6. 6Les questions partent au modèlepar le serveur, qui garde la clé de l'API
Le tri se fait à l'étape 3, chez Microsoft : un salarié hors du groupe n'arrive jamais jusqu'à l'interface. L'entreprise et son adresse sont fabriquées.
3

Consignes

  1. Inscrire l'application dans Microsoft Entra

    Centre d'administration Microsoft Entra › Entra ID › Inscriptions d'application › Nouvelle inscription

    Ce qu'on fait : un nom explicite, « IA Atelier » ; dans Types de comptes pris en charge, Locataire unique uniquement ; puis Inscrire. Noter l'ID d'application (client) et l'identifiant du locataire, sur la page Vue d'ensemble.

  2. Inscrire l'adresse de retour

    Gérer › Authentification › Ajouter un URI de redirection

    Ce qu'on fait : la plateforme Web, et l'adresse https://ia.atelier.example/oauth/microsoft/callback, celle qu'Open WebUI attend.

  3. Créer le secret de l'application

    Certificates & secrets › Client secrets › New client secret

    Ce qu'on fait : libellés en anglais, tels que la page française de Microsoft les donne ; copier la valeur dans le gestionnaire de secrets de l'hébergeur, jamais dans un fichier envoyé.

  4. Réserver l'application au groupe IA-Equipe

    Toutes les applications › l'application › Propriétés › Affectation requise ?

    Ce qu'on fait : sur Oui, puis Enregistrer ; ensuite Utilisateurs et groupes › Ajouter un utilisateur/groupe, le groupe IA-Equipe, Affecter.

  5. Compléter la configuration d'Open WebUI

    Ce qu'on fait : les dix variables de la grille fournie, à décider : c'est le cœur de l'exercice. Les noms viennent de la documentation d'Open WebUI.

  6. Lancer Open WebUI chez l'hébergeur

    Ce qu'on fait : l'image Docker et son volume de données, les variables dans l'environnement de l'hébergeur ; la commande de la documentation est plus bas, dans la correction.

  7. Tester avec trois comptes

    Ce qu'on fait : un membre du groupe, un salarié hors du groupe, un compte Microsoft personnel ; noter ce que chacun voit.

Libellés français de Microsoft, sauf l'étape du secret, que la page française donne en anglais. Open WebUI ne publie pas sa documentation en français.

4

Critères de réussite

5

Indications

Microsoft affiche une erreur d'adresse de retour

CauseL'adresse inscrite dans Entra ne correspond pas, au caractère près, à celle qu'envoie Open WebUI.

À faireInscrire exactement https://ia.atelier.example/oauth/microsoft/callback, plateforme Web ; ou fixer MICROSOFT_REDIRECT_URI.

La connexion réussit, puis « impossible de créer le compte »

CauseENABLE_OAUTH_SIGNUP est à false par défaut.

À faireLe passer à true : les comptes se créent à la première connexion, pour les seuls membres que Microsoft a laissés passer.

Le nouveau compte reste « en attente »

CauseDEFAULT_USER_ROLE vaut pending par défaut : un administrateur doit activer chaque compte.

À faireL'activer dans l'administration, ou passer DEFAULT_USER_ROLE à user, puisque le tri est déjà fait chez Microsoft.

Une variable changée n'a aucun effet

CauseCertaines variables sont gardées en base au premier lancement ; les changer ensuite dans l'environnement ne change plus rien.

À faireLes modifier dans l'administration d'Open WebUI ; la documentation donne aussi ENABLE_PERSISTENT_CONFIG=False comme solution temporaire.

Il faut se reconnecter au bout d'une heure

CauseMicrosoft ne renvoie qu'un token d'accès, valable environ une heure.

À faireAjouter offline_access : MICROSOFT_OAUTH_SCOPE=openid email profile offline_access.

Plus personne ne peut entrer en local, pas même l'administrateur

CauseENABLE_LOGIN_FORM=false ferme aussi l'inscription locale.

À faireCréer l'administrateur avant de fermer le formulaire ; sinon, ENABLE_INITIAL_ADMIN_SIGNUP permet de créer le premier compte.

6

Correction commentée

La configuration complétée, variable par variable. Les noms et les valeurs par défaut viennent de la documentation d'Open WebUI, lue le 8 et le 9 octobre 2026.

Correction commentée
VariableValeurPourquoi
WEBUI_URLhttps://ia.atelier.examplel'adresse publique, obligatoire
MICROSOFT_CLIENT_IDl'ID d'application (client)relevé à l'étape 1
MICROSOFT_CLIENT_SECRETla valeur du secretdans le gestionnaire de secrets de l'hébergeur
MICROSOFT_CLIENT_TENANT_IDl'identifiant du locataireun seul locataire : celui de l'entreprise
MICROSOFT_OAUTH_SCOPEopenid email profile offline_accessoffline_access évite la reconnexion toutes les heures
ENABLE_OAUTH_SIGNUPtruele compte se crée à la première connexion ; Microsoft a déjà trié
OAUTH_MERGE_ACCOUNTS_BY_EMAILfalsela valeur par défaut ; la fusion par adresse peut être dangereuse
DEFAULT_USER_ROLEusersinon, chaque compte attend une activation
ENABLE_LOGIN_FORMfalseune fois l'administrateur créé : plus d'entrée par mot de passe
OPENAI_API_KEYla clé de l'éditeurdans les secrets de l'hébergeur ; le navigateur ne la voit jamais

La commande de lancement donnée par la documentation d'Open WebUI, avec la seule clé de l'API ; chez un hébergeur, les variables du tableau s'ajoutent dans son environnement plutôt que sur la ligne de commande. Le volume open-webui:/app/backend/data est indispensable : sans lui, les données se perdent.

Lancer Open WebUI avec Docker, extrait de la documentation
docker run -d -p 3000:8080 -e OPENAI_API_KEY=your_secret_key -v open-webui:/app/backend/data --name open-webui --restart always ghcr.io/open-webui/open-webui:main

Pourquoi trier chez Microsoft. Avec « Affectation requise ? » sur Oui, un salarié hors du groupe est arrêté avant d'atteindre l'interface : l'interface n'a rien à décider, et un départ ou une arrivée se gère dans l'annuaire, au même endroit que le reste.

Le secret client. Microsoft écrit que les secrets client sont moins sûrs qu'un certificat et ne devraient pas servir en production. Les variables documentées d'Open WebUI pour Microsoft passent par un secret : le ranger dans le gestionnaire de secrets de l'hébergeur, le renouveler à date fixe, et noter ce risque dans le dossier de l'outil.

7

Extensions

Quatre interfaces à installer chez soi

Extensions
InterfaceLicenceConnexion d'entrepriseRéserver à un groupeDernière version
Open WebUILicence Open WebUI : BSD-3 avec une clause de marque depuis la version 0.6.6 ; marque retirable jusqu'à 50 utilisateurs sur 30 jours ; pas une licence open source au sens de l'OSIMicrosoft, un seul locataire ; Google ; un fournisseur OIDC à la foissynchronisation des rôles et des groupes depuis l'annuaire0.11.4, 21 septembre 2026
LibreChatMITMicrosoft Entra par OpenID ; Googleaccès réservé à des rôles ou des groupes Entra, OPENID_REQUIRED_ROLE0.8.8, 1er octobre 2026, préversion
LobeHubLobeHub Community License : Apache 2.0 avec des conditions pour les œuvres dérivées ; usage commercial permis sans modifier le codeMicrosoft, Google et OIDC, par Better Authnon relevé2.2.19, 7 octobre 2026
AnythingLLMMITpas de connexion OAuth complète : un passage simple, par liens de connexion temporairesplusieurs utilisateurs et des droits, en version Docker seulement1.17.0, 1er octobre 2026
D'après les dépôts, les licences et les documentations, lus le 8 octobre 2026.
  • La même chose avec LibreChat : la connexion Entra passe par OpenID, avec l'adresse de retour /oauth/openid/callback, et l'accès peut être réservé à un groupe dans l'application elle-même. Le fichier de configuration de la documentation :
LibreChat : connexion Microsoft Entra, extrait de la documentation
DOMAIN_CLIENT=https://your-domain.com # use http://localhost:3080 if not using a custom domain
DOMAIN_SERVER=https://your-domain.com # use http://localhost:3080 if not using a custom domain

# enable social login or else OpenID button will not appear on login page
ALLOW_SOCIAL_LOGIN=true

OPENID_CLIENT_ID=Your Application (client) ID
OPENID_CLIENT_SECRET=Your client secret
OPENID_ISSUER=https://login.microsoftonline.com/Your Directory (tenant ID)/v2.0/
OPENID_SESSION_SECRET=Any random string
OPENID_SCOPE=openid profile email #DO NOT CHANGE THIS
OPENID_CALLBACK_URL=/oauth/openid/callback # this should be the same for everyone

OPENID_REQUIRED_ROLE_TOKEN_KIND=id

# If you want to restrict access by groups
OPENID_REQUIRED_ROLE_PARAMETER_PATH="roles"
OPENID_REQUIRED_ROLE="Your Group Name" # Single role or comma-separated roles (e.g., Group1,Group2,Admin)

# Optional: redirects the user to the end session endpoint after logging out
OPENID_USE_END_SESSION_ENDPOINT=true

# Maximum logout URL length before using logout_hint instead of id_token_hint (default: 2000)
# OPENID_MAX_LOGOUT_URL_LENGTH=2000
  • Une entreprise sur Google Workspace : Open WebUI prend GOOGLE_CLIENT_ID et GOOGLE_CLIENT_SECRET, avec l'adresse de retour /oauth/google/callback.
  • Les rôles depuis l'annuaire : Open WebUI peut reprendre les rôles et les groupes de Microsoft, avec ENABLE_OAUTH_ROLE_MANAGEMENT et ENABLE_OAUTH_GROUP_MANAGEMENT.
  • Un certificat au lieu du secret : ce que Microsoft recommande ; à vérifier dans la documentation de l'interface choisie avant de s'y engager.
  • Les règles d'usage : une interface ouverte à l'équipe appelle une règle courte ; voir la charte d'usage de l'IA.
8

Lectures suivantes

Les pages qui renvoient ici

    Limites et sources

    L'entreprise, son domaine et ses comptes sont fabriqués ; aucune connexion n'a été faite pour écrire cette page.

    Les versions et les licences changent souvent ; celles du tableau datent du 8 octobre 2026.

    Le code vient des documentations d'Open WebUI et de LibreChat, sans avoir été exécuté ici.

    1. Microsoft, inscrire une application ; Microsoft, URI de redirection ; Microsoft, restreindre à des utilisateurs ; Microsoft, secrets et certificats ; Open WebUI, SSO ; Open WebUI, variables ; LibreChat, Entra.
    2. Les relevés : apprendre/recherches/2026-10-09-interface-sso.json et apprendre/recherches/2026-10-08-dev-avance.json.

    Écrit par Meridal, avec l'aide de l'IA ; chaque fait vérifié à sa source et relu avant publication. Texte et schémas sous licence CC BY 4.0 : reprenez-les en citant Meridal. Le code sous licence MIT.

    Service correspondant

    L'IA pour toute l'équipe

    1 650 € à 4 250 €, puis sur devis

    Voir le service

    Un premier échange de 30 minutes

    En visio et sans frais : vous décrivez votre situation, nous vous indiquons ce qui est réalisable, avec quels outils et pour quel ordre de prix. Vous pouvez aussi nous écrire ; chaque message reçoit une réponse écrite.