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.
Importante
O SERVIDOR MCP (Protocolo de Contexto do Modelo SQL) está disponível no Construtor de API de Dados versão 1.7 e posterior.
Observação
A funcionalidade do SQL MCP Server 2.0 descrita nesta seção está atualmente em versão prévia e pode ser alterada antes da disponibilidade geral. Para obter mais informações, consulte o que há de novo na versão 2.0.
O SQL MCP Server expõe um ponto de extremidade do Protocolo de Contexto de Modelo (MCP) no Data API builder. Algumas opções de autenticação usam JWTs (Tokens Web JSON).
Quando você conecta um cliente (por exemplo, um agente do Microsoft AI Foundry) ao SQL MCP Server, a autenticação se torna uma configuração de duas direções:
-
Autenticação de entrada (cliente para SQL MCP Server): como o cliente se autentica ao chamar seu endpoint MCP (por exemplo,
https://<host>/mcp). - Autenticação de saída (SQL MCP Server para banco de dados): como o SQL MCP Server se autentica no banco de dados.
Use o diagrama a seguir para se orientar. No restante deste artigo, você configura a saída primeiro (para que o servidor possa acessar o banco de dados) e configure a entrada (para que o cliente possa chamar o servidor com segurança).
Observação
O "Aplicativo Cliente" pode ser um agente do Microsoft AI Foundry, um aplicativo cliente MCP personalizado ou outro runtime do agente. A configuração de entrada do SQL MCP Server é a mesma, independentemente de qual cliente chama o endpoint MCP.
Pré-requisitos
- SQL MCP Server em execução (Construtor de API de Dados 1.7+)
- um objeto existente
dab-config.jsoncom pelo menos uma entidade - Um projeto do Microsoft AI Foundry com um agente em que você pode adicionar uma conexão de ferramenta MCP
Etapa 1: Configurar a autenticação de saída (SQL MCP Server para banco de dados)
Você define a autenticação de saída em sua data-source configuração. Geralmente é a string de conexão.
Várias fontes de dados
O SQL MCP Server dá suporte a várias fontes de dados por meio de data-source-files. Cada fonte de dados pode ter suas próprias configurações de autenticação de saída. Por exemplo, um banco de dados pode usar a identidade gerenciada, enquanto outro usa um nome de usuário e senha do SQL. As fontes de dados também podem compartilhar uma única identidade, dependendo de como você configura o acesso ao banco de dados.
Para obter mais informações, consulte Adicionar mais de uma fonte de dados e configuração de fonte de dados.
Configurar a conexão de banco de dados
Em seu dab-config.json, defina data-source.database-type e data-source.connection-string.
Dica
Use @env() para manter os segredos fora do arquivo de configuração.
Exemplo: usuário/senha do SQL (desenvolvimento)
O SQL MCP Server dá suporte à autenticação SQL com um nome de usuário e senha. Essa abordagem é comum para desenvolvimento, teste e determinados ambientes de produção.
{
"data-source": {
"database-type": "mssql",
"connection-string": "@env('SQL_CONNECTION_STRING')"
}
}
Exemplo de valor de variável de ambiente:
Server=tcp:<server>.database.windows.net,1433;Initial Catalog=<database>;User ID=<user>;Password=<password>;Encrypt=True;TrustServerCertificate=False;
Exemplo: identidade gerenciada (recomendada para Azure)
O SQL MCP Server dá suporte a MSI (Identidades de Serviço Gerenciado) para Azure SQL usando DefaultAzureCredential. Configure sua cadeia de conexão para usar autenticação de identidade gerenciada.
Server=tcp:<server>.database.windows.net,1433;Initial Catalog=<database>;Authentication=Active Directory Managed Identity;
Para a UAMI (identidade gerenciada) atribuída pelo usuário, inclua a ID do cliente de identidade:
Server=tcp:<server>.database.windows.net,1433;Initial Catalog=<database>;Authentication=Active Directory Managed Identity;User Id=<uami-client-id>;
Para obter detalhes completos, consulte a configuração da fonte de dados.
Etapa 2: Configurar a autenticação de entrada (cliente para o SQL MCP Server)
A autenticação de entrada controla como o cliente MCP se autentica no SQL MCP Server.
Provedores OAuth
O SQL MCP Server pode validar JWTs (Tokens Web JSON) emitidos por um provedor OAuth (por exemplo, Microsoft Entra ID). O cliente inclui o token com cada solicitação e o SQL MCP Server o valida.
Autenticação de gateway (opcional)
Se o cliente MCP exigir chaves de API ou outro esquema que não seja JWT, posicione o servidor MCP SQL atrás de um gateway ou proxy que autentique o cliente e encaminhe as solicitações para o endpoint MCP.
Para um padrão hospedado no Azure, consulte Acesso seguro aos servidores MCP no Gerenciamento de API.
Vários clientes
A autenticação de entrada é configurada uma vez por instância do SQL MCP Server, por exemplo, usando runtime.host.authentication.provider. Todos os clientes que chamam o mesmo ponto de extremidade MCP devem usar uma abordagem de autenticação que seja compatível. Por exemplo, todos os clientes podem usar tokens Microsoft Entra para o mesmo público.
Dica
Se você precisar de dois esquemas de autenticação de entrada diferentes (por exemplo, um cliente usa Microsoft Entra e outro usa um provedor de identidade diferente), execute duas instâncias do SQL MCP Server com configurações de runtime.host.authentication diferentes.
Microsoft AI Foundry
Use estas etapas quando o cliente for um agente da Microsoft AI Foundry.
- No projeto do agente, selecione Adicionar uma ferramenta.
- Selecione a guia Personalizado.
- Selecione o Protocolo de Contexto do Modelo.
- Defina o ponto de extremidade do Servidor MCP Remoto (por exemplo,
https://<your-server>/mcp). - Selecione um modo de Autenticação .
Depois de configurar o Foundry, você deve configurar o SQL MCP Server para aceitar o mesmo modo de autenticação de entrada.
Observação
Este artigo se concentra na conexão da ferramenta MCP. Ele não abrange a configuração da autenticação para os pontos de extremidade REST do Serviço Foundry Agent.
Modos de autenticação da fundição
Não autenticado
A partir do DAB 2.0, o provedor de autenticação padrão é Unauthenticated. Configure o SQL MCP Server para tratar as solicitações como anonymous usando o provedor padrão Unauthenticated (ou definir provider: AppService) e conceda apenas as anonymous permissões que você pretende.
Para o comportamento de autenticação do DAB subjacente, consulte Configurar o provedor não autenticado.
passagem de identidade Microsoft Entra ou OAuth
Configure o SQL MCP Server para validar JWTs (provider: EntraId).
Sistema chaveado
Não há suporte diretamente. Se você precisar usar uma chave, posicione o ponto de extremidade MCP atrás de um gateway, como o Azure API Management. Consulte Acesso seguro a servidores MCP no Gerenciamento de API.
Para obter detalhes de configuração específicos do Foundry, consulte as diretrizes de autenticação do MCP do Foundry.
Registrar um aplicativo no Microsoft Entra ID
Um registro de aplicativo é necessário para Microsoft Entra e OAuth identity passthrough.
- Registre a ID do Diretório (locatário) (usada para compilar
jwt.issuer). - Registre o URI da ID do Aplicativo (recomendado para
jwt.audiencee o público-alvo do Foundry).
Para obter as etapas de registro do aplicativo, consulte Register um aplicativo no Microsoft Entra ID.
Configurar o SQL MCP Server com a ID do Entra
Configure o provedor EntraId e defina os valores jwt.audience e jwt.issuer.
Exemplos de Linha de Comando
Os exemplos a seguir usam os comandos dab configure e dab update para definir opções de autenticação.
dab configure \
--runtime.host.authentication.provider EntraId
dab configure \
--runtime.host.authentication.jwt.audience "api://<app-id-or-audience>"
dab configure \
--runtime.host.authentication.jwt.issuer "https://login.microsoftonline.com/<tenant-id>/v2.0"
# Grant permissions for authenticated users (repeat per entity)
dab update \
Products \
--permissions "authenticated:read"