Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A Autenticação do Serviço de Aplicativo permite que você controle o acesso ao servidor MCP (Model Context Protocol) exigindo que os clientes MCP se autentiquem com um provedor de identidade. Você pode fazer com que seu aplicativo esteja em conformidade com a especificação de autorização do servidor MCP seguindo as instruções neste artigo.
Importante
A autorização do servidor MCP define o acesso ao servidor e não fornece controle granular para ferramentas mcp individuais ou outros constructos.
Configurar um provedor de identidade
Configure a Autenticação do Serviço de Aplicativo com um provedor de identidade. O registro do provedor de identidade deve ser exclusivo para o servidor MCP. Não reutilize um registro existente de outro componente do aplicativo.
Ao criar o registro, anote quais escopos são definidos no registro ou na documentação do provedor de identidade.
Configurar metadados de recursos protegidos (versão prévia)
A autorização do servidor MCP requer que o servidor hospede metadados de recursos protegidos (PRM). O suporte para PRM com a Autenticação do Serviço de Aplicativo está atualmente em versão prévia.
Para configurar o PRM para o servidor MCP, defina a configuração do aplicativo WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES como uma lista separada por vírgulas de escopos para seu aplicativo. Os escopos necessários são definidos como parte do registro do aplicativo ou documentados pelo provedor de identidade. Por exemplo, se você usou o provedor do Microsoft Entra ID e permitiu que o Serviço de Aplicativo criasse o registro para você, um escopo api://<client-id>/user_impersonation padrão foi criado. Você definiria WEBSITE_AUTH_PRM_DEFAULT_WITH_SCOPES para esse valor.
Considerações do cliente MCP
Para conectar usuários, o cliente MCP deve ser registrado no provedor de identidade. Alguns provedores dão suporte ao DCR (Registro Dinâmico de Cliente), mas muitos não, incluindo a ID do Microsoft Entra. Quando o DCR não está disponível, o cliente precisa ser pré-configurado com uma ID do cliente. Consulte a documentação do seu cliente ou do SDK do cliente para entender como fornecer uma ID do cliente.
Elaboração de consentimento do Entra ID
Se você estiver usando a ID do Microsoft Entra, poderá especificar aplicativos cliente conhecidos e marcá-los como pré-autorizados para acesso. A pré-autenticação é recomendada quando possível. Sem a pré-autorização, os usuários ou um administrador precisam consentir com o registro do servidor MCP e quaisquer permissões necessárias.
Para cenários de consentimento do usuário, a criação de consentimento envolve o cliente MCP usando logon interativo para exibir o prompt de consentimento. Alguns clientes MCP podem não exibir um logon interativo. Por exemplo, se você estiver criando uma ferramenta MCP a ser usada pelo GitHub Copilot no Visual Studio Code, o cliente tentará usar o contexto do usuário conectado e não exibirá um prompt de consentimento. Nesses casos, a pré-autorização do aplicativo cliente é necessária para evitar problemas de consentimento.
Para fins de desenvolvimento/teste, você pode criar o consentimento do usuário para si mesmo entrando no aplicativo diretamente em um navegador. Navegar para <your-app-url>/.auth/login/aad inicia o fluxo de entrada e solicita seu consentimento, se necessário. Em seguida, você pode tentar fazer login por meio de outro cliente.
Considerações sobre o servidor MCP
A Autenticação do Serviço de Aplicativo valida tokens fornecidos por clientes MCP e aplica as políticas de autorização configuradas antes de responder à solicitação de inicialização do MCP. Talvez seja necessário atualizar suas regras de autorização para o cenário mcp. Por exemplo, se você usou o provedor de ID do Microsoft Entra e permite que o Serviço de Aplicativo crie o registro para você, uma política padrão só permite tokens obtidos pelo próprio aplicativo. Portanto, você adicionaria seu cliente MCP à lista de aplicativos permitidos na configuração de autenticação. Para obter mais informações, consulte Usar uma política de autorização interna.
As estruturas do servidor MCP frequentemente abstraem o transporte, mas, em alguns casos, podem expor o contexto HTTP subjacente. Quando o contexto HTTP estiver disponível, você poderá acessar declarações de usuário e outras informações de autenticação fornecidas pela Autenticação do Serviço de Aplicativo.
Cuidado
O token usado para autorização do servidor MCP destina-se a representar o acesso ao servidor MCP e não a um recurso downstream. Cenários de passagem em que o servidor encaminha seu token criam vulnerabilidades de segurança, portanto, evite esses padrões. Se você precisar acessar um recurso downstream, obtenha um novo token por meio do fluxo OBO ou de outro mecanismo para delegação explícita.
Conteúdo relacionado
- Especificação de autorização de protocolo de contexto de modelo
- Vinculações de Protocolo de Contexto do Modelo do Azure Functions
- Integrar um aplicativo do App Service como um servidor MCP (.NET)
- Integrar um aplicativo do Serviço de Aplicativo como um Servidor MCP (Java)
- Integrar um aplicativo do Serviço de Aplicativo como um servidor MCP (Node.js)
- Integrar um aplicativo do Serviço de Aplicativo como um servidor MCP (Python)