Azure Entra
Apprenez à configurer LibreChat pour utiliser Azure Entra pour l'authentification des utilisateurs.
- Allez sur le Azure Portal et connectez-vous avec votre compte.
- Dans la zone de recherche, tapez "Azure Entra" et cliquez dessus.
- Dans le menu de gauche, cliquez sur App registrations, puis sur New registration.
- Donnez un nom à votre application et sélectionnez Web comme type de plateforme.
- Dans le champ Redirect URI, saisissez votre URL de rappel OpenID de LibreChat et cliquez sur Register. Pour les installations Docker locales, utilisez
http://localhost:3080/oauth/openid/callback. Pour les instances déployées, remplacezhttp://localhost:3080par la valeur de votreDOMAIN_SERVERpublic, par exemplehttps://chat.example.com/oauth/openid/callback.
- Vous verrez une page Vue d'ensemble avec quelques informations sur votre application. Copiez l'ID de l'application (client) et l'ID du répertoire (locataire) et enregistrez-les quelque part.
- Dans le menu de gauche, cliquez sur Authentication et cochez les cases Access tokens et ID tokens sous Implicit grant and hybrid flows.
- Dans le menu de gauche, cliquez sur Certificates & Secrets, puis sur New client secret. Donnez un nom et une date d'expiration à votre secret, puis cliquez sur Add. Vous verrez une colonne Value contenant votre secret. Copiez-le et enregistrez-le dans un endroit sûr. Ne le partagez avec personne !
- Si vous souhaitez restreindre l'accès par groupes, vous devez ajouter la revendication (claim) groups au jeton. Pour ce faire, allez dans Token configuration et cliquez sur Add group claim. Sélectionnez les groupes que vous souhaitez inclure dans le jeton et cliquez sur Add.
- Ouvrez le fichier .env dans le dossier de votre projet et ajoutez les variables suivantes avec les valeurs que vous avez copiées :
L'URI de redirection enregistré dans Azure doit correspondre exactement à l'URL utilisée par LibreChat. Si DOMAIN_SERVER=https://chat.example.com, Azure doit utiliser https://chat.example.com/oauth/openid/callback.
- Enregistrez le fichier .env
Remarque : Si vous utilisez Docker, exécutez
docker compose up -dpour appliquer les modifications de configuration du fichier .env
Avancé : Réutilisation de jetons
LibreChat prend en charge la réutilisation des jetons Azure Entra ID pour la gestion des sessions, ce qui peut offrir une meilleure intégration avec votre environnement Azure. Cette fonctionnalité permet à LibreChat d'utiliser les jetons d'actualisation d'Azure au lieu de gérer ses propres jetons de session.
Pour en savoir plus sur cette fonctionnalité et comment la configurer, consultez Re-use OpenID Tokens for Login Session.
Avancé : Intégration de l'API Microsoft Graph
Lorsque vous utilisez Azure Entra ID comme fournisseur OpenID, vous pouvez activer l'intégration de l'API Microsoft Graph pour améliorer le système de permissions et de partage avec des fonctionnalités de recherche de personnes et de groupes.
Prérequis
- Votre inscription d'application Azure doit disposer des autorisations Microsoft Graph API appropriées
- Le consentement de l'administrateur peut être requis pour certaines étendues (scopes) de l'API Graph (comme
GroupMember.Read.All)
Ajout des autorisations de l'API Graph
- Dans votre inscription d'application Azure, allez dans API permissions
- Cliquez sur Add a permission > Microsoft Graph > Delegated permissions
- Ajoutez ces permissions :
User.Read- Se connecter et lire le profil utilisateurPeople.Read- Lire les contacts de l'utilisateurGroupMember.Read.All- Lire toutes les appartenances aux groupesUser.ReadBasic.All- Lire les profils de base de tous les utilisateurs
- Cliquez sur Grant admin consent si nécessaire (vous aurez besoin de privilèges d'administrateur)
Configuration
Requis : Activer la réutilisation des jetons
Important : Vous DEVEZ activer la réutilisation des jetons OpenID pour que cette fonctionnalité fonctionne :
Voir la Configuration de réutilisation des jetons ci-dessus pour plus de détails.
Ajoutez les variables d'environnement suivantes à votre fichier .env :
Lorsqu'elle est activée, la sélection de personnes dans les boîtes de dialogue d'autorisations et de partage permettra de :
- Rechercher à la fois parmi les utilisateurs locaux de LibreChat et les utilisateurs Azure Entra ID
- Afficher les profils des utilisateurs avec leurs noms et adresses e-mail de votre organisation
- Autoriser la recherche et la sélection de groupes Azure Entra ID
- Afficher les membres du groupe en fonction de vos autorisations Graph API
Notes
- La réutilisation des jetons (
OPENID_REUSE_TOKENS=true) est obligatoire pour que cette fonctionnalité fonctionne - Les
OPENID_GRAPH_SCOPESsont automatiquement ajoutés à votreOPENID_SCOPEexistant lors de l'authentification. - La recherche de groupe nécessite l'autorisation
GroupMember.Read.All, qui requiert généralement le consentement de l'administrateur. - La recherche d'utilisateurs fonctionne avec les autorisations de base
User.Read,People.ReadetUser.ReadBasic.All
Avancé : Intégration SharePoint
LibreChat peut s'intégrer avec SharePoint Online et OneDrive for Business, permettant aux utilisateurs de parcourir et de joindre des fichiers directement depuis leurs bibliothèques SharePoint.
Prérequis
- Toutes les exigences de Token Reuse doivent être remplies
- Votre inscription d'application Azure nécessite des autorisations SharePoint supplémentaires
- Votre inscription d'application Azure doit exposer et accorder une étendue d'API LibreChat, telle que
api://<client-id>/access_as_user
Ajout des autorisations SharePoint
- Dans votre inscription d'application Azure, allez dans API permissions
- Cliquez sur Add a permission
Pour l'accès à SharePoint :
- Sélectionnez SharePoint (pas Microsoft Graph)
- Choisissez Delegated permissions
- Ajouter :
AllSites.Read- Lire les éléments dans toutes les collections de sites
Pour les téléchargements de fichiers :
-
Cliquez à nouveau sur Add a permission
-
Sélectionnez Microsoft Graph
-
Choisissez Delegated permissions
-
Ajouter :
Files.Read.All- Lire tous les fichiers auxquels l'utilisateur peut accéder -
Cliquez sur Grant admin consent pour les deux autorisations
Configuration
Avant d'activer les variables SharePoint, assurez-vous que la configuration de réutilisation du jeton OpenID demande la portée de l'API de l'application LibreChat. Cela donne à Azure un jeton d'accès avec une audience d'application qui peut être utilisé comme assertion « on-behalf-of » pour l'échange de jetons SharePoint et Graph.
Utilisation
Une fois correctement configuré :
- Les utilisateurs verront l'option « From SharePoint » dans le menu des pièces jointes.
- Cliquer dessus ouvre le sélecteur de fichiers SharePoint natif
- Les utilisateurs peuvent parcourir et sélectionner des fichiers depuis n'importe quel site SharePoint ou OneDrive auquel ils ont accès.
- Les fichiers sélectionnés sont téléchargés et joints à la conversation
Note de sécurité
L'intégration SharePoint respecte toutes les autorisations SharePoint existantes. Les utilisateurs ne peuvent accéder qu'aux fichiers qu'ils sont déjà autorisés à consulter dans SharePoint/OneDrive.
Pour un dépannage détaillé et une configuration avancée, consultez : Guide d'intégration SharePoint
Que pensez-vous de ce guide ?