Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier les répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer de répertoire.
Cet article explique comment sécuriser votre serveur MCP (Model Context Protocol) hébergé sur Azure App Service à l’aide de l’authentification Microsoft Entra. En activant l’authentification, vous assurez que seuls les utilisateurs authentifiés avec Microsoft Entra peuvent accéder à votre serveur MCP via le mode d’agent Copilot dans Visual Studio Code.
Pour obtenir d’autres méthodes d’authentification et des concepts généraux de sécurité du serveur MCP, consultez Sécuriser un serveur de protocole de contexte de modèle dans Azure App Service.
Prerequisites
Une application App Service qui héberge un serveur MCP. Si vous devez en créer un, consultez l’un des didacticiels suivants :
- Intégrer une application App Service en tant que serveur MCP pour GitHub Copilot Chat (.NET)
- Intégrer une application App Service en tant que serveur MCP pour GitHub Copilot Chat (Java)
- Intégrer une application App Service en tant que serveur MCP pour GitHub Copilot Chat (Python)
- Intégrer une application App Service en tant que serveur MCP pour GitHub Copilot Chat (Node.js)
Activez l’authentification Microsoft Entra
Dans le portail Azure, accédez à votre application App Service.
Dans le menu de gauche, sélectionnez Paramètres>Authentification, puis sélectionnez Ajouter un fournisseur d’identité.
Dans la page Ajouter un fournisseur d’identité , sélectionnez Microsoft comme fournisseur d’identité.
Sous paramètres d’authentification App Service, pour l’expiration du secret client, sélectionnez une période d’expiration (par exemple , 6 mois).
Acceptez toutes les autres valeurs par défaut et sélectionnez Ajouter pour créer le fournisseur d’identité.
Cela crée une inscription d’application dans Microsoft Entra ID avec une clé secrète client et configure votre application App Service pour l’utiliser pour l’authentification.
Autoriser Visual Studio Code pour l'authentification du Service d'applications
Après avoir activé l’authentification, vous devez autoriser Visual Studio Code à accéder à votre serveur MCP.
Dans la page Authentification de votre application App Service, sous Fournisseur d’identité, sélectionnez Modifier (l’icône crayon) en regard du fournisseur Microsoft que vous avez créé.
Dans la page Modifier le fournisseur d’identité, sous Vérifications supplémentaires requises> pourl’application cliente, sélectionnez Autoriser les demandes à partir d’applications clientes spécifiques.
Sélectionnez le widget de crayon pour modifier les applications autorisées.
Dans le champ Applications clientes autorisées , ajoutez l’ID client Visual Studio Code :
aebc6443-996d-45c2-90f0-388ff96faa56.Sélectionnez OK, puis sélectionnez Enregistrer.
Autoriser Visual Studio Code dans l’inscription de l’application
Ensuite, vous devez configurer l’inscription de l’application pour exposer votre API à Visual Studio Code.
Revenez à la page Authentification de votre application App Service.
Sélectionnez le fournisseur Microsoft dans la colonne Fournisseur d’identité pour ouvrir la page d’inscription de l’application.
Dans la page d’inscription de l’application, sélectionnez Gérer l’exposition>d’une API dans le menu de gauche.
Sous Applications clientes autorisées, sélectionnez Ajouter une application cliente.
Dans le champ ID client , entrez l’ID client Visual Studio Code :
aebc6443-996d-45c2-90f0-388ff96faa56.Cochez la case à côté du périmètre user_impersonation pour autoriser ce périmètre.
Sélectionnez Ajouter une application.
Sous Étendues définies par cette API, recherchez et copiez la valeur d’étendue complète. Il doit ressembler à
api://<app-registration-app-id>/user_impersonation.Vous avez besoin de cette valeur d’étendue dans la section suivante.
Activer les métadonnées de ressources protégées en définissant l’étendue d’autorisation
Pour activer l’autorisation du serveur MCP, vous devez configurer les métadonnées de ressource protégées (PRM) en définissant l’étendue d’autorisation dans un paramètre d’application. Cela permet aux clients MCP de découvrir les exigences d’authentification via le /.well-known/oauth-protected-resource point de terminaison.
Dans le portail Azure, revenez à votre page d’application App Service.
Dans le menu de gauche, sélectionnez Paramètres>Variables d'environnement.
Sélectionnez Ajouter pour créer un paramètre d’application.
Pour Nom, entrez
WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES.Pour Valeur, collez le scope que vous avez copié à partir de l’enregistrement de l’application :
api://<app-registration-app-id>/user_impersonation.Sélectionnez Appliquer, puis réessayez pour confirmer et redémarrer votre application.
Ce paramètre configure le PRM pour inclure l’étendue requise pour l’autorisation du serveur MCP.
Se connecter à partir de Visual Studio Code
Vous pouvez maintenant vous connecter à votre serveur MCP sécurisé à partir de Visual Studio Code.
Ouvrez Visual Studio Code sur votre ordinateur local.
Ouvrez ou créez un fichier de configuration MCP (
mcp.json). Pour une configuration MCP étendue à l’espace de travail, créez-la dans le répertoire .vscode de votre espace de travail.Ajoutez votre configuration de serveur MCP :
{ "servers": { "my-app-service-mcp": { "type": "http", "url": "https://<your-app-url>.azurewebsites.net/api/mcp" } } }Remplacez
<your-app-url>par votre URL d’application App Service réelle. Vous trouverez le domaine par défaut de votre application dans la page Vue d’ensemble du portail Azure. Dans cet exemple, le chemin est/api/mcp, mais le chemin d’accès réel dépend de votre code MCP.Dans Visual Studio Code, ouvrez la palette de commandes (
Ctrl+Shift+PouCmd+Shift+Psur macOS).Tapez MCP : Répertorier les serveurs et appuyez sur Entrée.
Sélectionnez votre serveur MCP dans la liste et choisissez Démarrer le serveur.
Visual Studio Code vous invite automatiquement à vous connecter avec l’ID Microsoft Entra. Suivez les invites d’authentification.
L’extension MCP gère le flux OAuth à l’aide de l’étendue que vous avez configurée et Visual Studio Code obtient le jeton d’accès nécessaire pour appeler votre serveur MCP.
Conseil / Astuce
Si vous voyez une invite d’authentification inattendue ou rencontrez des erreurs, consultez Résolution des problèmes.
Une fois authentifié, votre serveur MCP est connecté et prêt à être utilisé en mode Agent GitHub Copilot Chat ou d’autres clients MCP.
Tester la connexion
Pour vérifier que votre serveur MCP est correctement sécurisé et accessible :
Ouvrez GitHub Copilot Chat dans Visual Studio Code (
Ctrl+Alt+IouCmd+Option+Isur macOS).Essayez d’utiliser une fonctionnalité à partir de votre serveur MCP. Par exemple, si vous utilisez l’exemple Todos :
Show me all my tasksGitHub Copilot doit appeler correctement votre serveur MCP, et il faudrait que vous puissiez voir les résultats dans le chat. Si vous rencontrez des problèmes, consultez Résolution des problèmes.
Résolution des problèmes
Lorsque vous démarrez le serveur MCP dans Visual Studio Code, l’invite d’authentification indique si votre configuration est correcte :
Configuration correcte : Visual Studio Code vous invite à vous authentifier auprès de Microsoft. Cela signifie que les métadonnées de la ressource protégée (PRM) sont configurées correctement, et Visual Studio Code a correctement découvert le serveur d’autorisation et l’étendue à partir de l'endpoint
/.well-known/oauth-protected-resource.Configuration incorrecte : Visual Studio Code vous invite à vous authentifier auprès d’un
/authorizepoint de terminaison sur votre application App Service (par exemple).https://<your-app-url>.azurewebsites.net/authorizeCela signifie que le PRM n’est pas configuré correctement. Visual Studio Code ne trouve pas le serveur d’autorisation et l’étendue d’autorisation. Il revient donc à utiliser l’URL de votre application comme point de terminaison d’autorisation, qui n’existe pas.
Si vous voyez l’invite d’authentification incorrecte, vérifiez que :
- Le paramètre
WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPESde votre application est correctement configuré avec la valeurapi://<app-registration-app-id>/user_impersonationd’étendue complète. - L’application App Service a entièrement redémarré après l’ajout du paramètre d’application. La fin du redémarrage peut prendre quelques minutes.
Si vous voyez des erreurs d’authentification après vous être connecté, vérifiez que :
- L’ID client Visual Studio Code (
aebc6443-996d-45c2-90f0-388ff96faa56) est ajouté à la configuration d’authentification App Service (applications clientes autorisées) et dans l’inscription d’application (applications clientes autorisées dans Exposer une API). - La valeur d’étendue dans le paramètre d’application correspond exactement à ce qui est défini dans l’inscription de votre application.
Contenu connexe
- Sécuriser un serveur de protocole de contexte de modèle dans Azure App Service
- Configurer votre application App Service ou Azure Functions pour utiliser la connexion à Microsoft Entra
- Configurer le fournisseur Microsoft Entra avec une identité managée plutôt qu'un secret (version préliminaire)
- Qu’est-ce que le protocole de contexte de modèle ?