Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
La autenticación de App Service permite controlar el acceso al servidor del Protocolo de contexto de modelo (MCP) al requerir que los clientes de MCP se autentiquen con un proveedor de identidades. Puede hacer que la aplicación cumpla con la especificación de autorización del servidor MCP siguiendo las instrucciones de este artículo.
Importante
La autorización del servidor MCP define el acceso al servidor y no proporciona control pormenorizado a herramientas de MCP individuales u otras construcciones.
Configuración de un proveedor de identidades
Configure la autenticación de App Service con un proveedor de identidades. El registro del proveedor de identidades debe ser único para el servidor MCP. No reutilice un registro existente desde otro componente de aplicación.
Al crear el registro, tome nota de los ámbitos que se definen en su registro o en la documentación del proveedor de identidad.
Configuración de metadatos de recursos protegidos (versión preliminar)
La autorización del servidor MCP requiere que el servidor alojador tenga los metadatos de recursos protegidos (PRM). La compatibilidad con PRM con la autenticación de App Service está actualmente en versión preliminar.
Para configurar PRM para su servidor MCP, ajuste la configuración de la aplicación WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES a una lista de ámbitos separados por comas para su aplicación. Los ámbitos que necesitas se definen como parte del registro de la aplicación o están documentados por su proveedor de identidad. Por ejemplo, si usó el Microsoft Entra ID provider y permitió que App Service creara el registro por usted, se creó un ámbito predeterminado de api://<client-id>/user_impersonation. Debes establecer WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES en ese valor.
Consideraciones sobre el cliente de MCP
Para poder autenticar a los usuarios, el cliente MCP debe registrarse con el proveedor de identidad. Algunos proveedores admiten el registro dinámico de cliente (DCR), pero muchos no, incluido el identificador de Microsoft Entra. Cuando DCR no está disponible, el cliente debe estar preconfigurado con un identificador de cliente. Consulte la documentación de su cliente o SDK de cliente para saber cómo proporcionar un ID de cliente.
Creación del consentimiento de Entra ID
Si usa el identificador de Entra de Microsoft, puede especificar aplicaciones cliente conocidas y marcarlas como autenticadas previamente para el acceso. La autenticación previa se recomienda siempre que sea posible. Sin la autenticación previa, los usuarios o un administrador deben dar su consentimiento al registro del servidor MCP y los permisos que necesite.
En escenarios de consentimiento del usuario, la redacción del consentimiento implica que el cliente MCP utiliza el inicio de sesión interactivo para mostrar el mensaje de consentimiento. Es posible que algunos clientes de MCP no muestren un inicio de sesión interactivo. Por ejemplo, si va a crear una herramienta MCP que GitHub Copilot usará en Visual Studio Code, el cliente intenta usar el contexto del usuario que ha iniciado sesión y no muestra un mensaje de consentimiento. En estos casos, se requiere la autenticación previa de la aplicación cliente para evitar problemas de consentimiento.
Para fines de desarrollo y pruebas, puede crear el consentimiento del usuario por sí mismo iniciando sesión en la aplicación directamente en un explorador. Al navegar a <your-app-url>/.auth/login/aad , se inicia el flujo de inicio de sesión y se le pide su consentimiento si es necesario. A continuación, puede intentar iniciar sesión desde otro cliente.
Consideraciones sobre el servidor MCP
La autenticación de App Service valida los tokens proporcionados por los clientes de MCP y aplica las directivas de autorización configuradas antes de responder a la solicitud de inicialización de MCP. Es posible que tenga que actualizar las reglas de autorización para el escenario de MCP. Por ejemplo, si ha usado el proveedor de identificación de Entra de Microsoft y permite que App Service cree el registro por usted, una directiva predeterminada solo permite los tokens obtenidos por la aplicación misma. Por lo tanto, agregaría el cliente MCP a la lista de aplicaciones permitidas en la configuración de autenticación. Para obtener más información, consulte Uso de una directiva de autorización integrada.
Los marcos de servidor MCP suelen abstraer el transporte, pero en algunos casos podrían exponer el contexto HTTP subyacente. Cuando el contexto HTTP está disponible, puede acceder a las reclamaciones de usuario y otra información de autenticación proporcionada por App Service Authentication.
Precaución
El token usado para la autorización del servidor MCP está diseñado para representar el acceso al servidor MCP y no a un recurso de nivel inferior. Escenarios de paso a través en los que el servidor reenvía su token crean vulnerabilidades de seguridad, por lo que se deben evitar estos patrones. Si necesita acceder a un recurso descendente, obtenga un nuevo token a través del flujo "en nombre de" u otro mecanismo para la delegación explícita.
Contenido relacionado
- Especificación de autorización del protocolo de contexto de modelo
- Vinculaciones del protocolo de contexto del modelo de Azure Functions
- Integración de una aplicación de App Service como un servidor MCP (.NET)
- Integración de una aplicación de App Service como un servidor MCP (Java)
- Integración de una aplicación de App Service como un servidor MCP (Node.js)
- Integración de una aplicación de App Service como un servidor MCP (Python)