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.
Observação
Pesquisa de IA do Azure está disponível por meio do portal Azure, APIs REST e SDKs do Azure. Ele também sustenta o IQ do Foundry, a camada de conhecimento gerenciado que transforma o conteúdo da empresa em bases de conhecimento reutilizáveis e com reconhecimento de permissão para agentes no portal do Microsoft Foundry.
Este artigo descreve como configurar uma conexão de indexador Pesquisa de IA do Azure para Instância Gerenciada de SQL usando uma identidade gerenciada em vez de fornecer credenciais no cadeia de conexão.
Você pode usar uma identidade gerenciada atribuída pelo sistema ou uma identidade gerenciada atribuída pelo usuário. As identidades gerenciadas são logons do Microsoft Entra e exigem atribuições de função do Azure para acessar dados no Instância Gerenciada de SQL.
Antes de saber mais sobre esse recurso, você deve entender o que é um indexador e como configurar um indexador para sua fonte de dados. Para obter mais informações, consulte Indexadores na Pesquisa de IA do Azure e Indexar dados do Banco de Dados SQL do Azure.
Pré-requisitos
Crie uma identidade gerenciada para seu serviço de pesquisa.
Função de administrador do Microsoft Entra na Instância Gerenciada de SQL:
Para atribuir permissões de leitura em Instância Gerenciada de SQL, você deve ser um administrador global Azure com um Instância Gerenciada de SQL. Consulte Configure e gerencie Microsoft Entra autenticação com Instância Gerenciada de SQL e siga as etapas para provisionar um administrador Microsoft Entra (Instância Gerenciada de SQL).
Configurar um ponto de extremidade público e um grupo de segurança de rede na Instância Gerenciada do SQL para permitir conexões da Pesquisa de IA do Azure. Atualmente, não há suporte para a conexão por meio de um link privado compartilhado ao usar uma identidade gerenciada.
Atribuir permissões para ler o banco de dados
Siga estas etapas para atribuir a permissão de identidade gerenciada do sistema de serviço de pesquisa para ler o banco de dados SQL gerenciado.
Conecte-se ao seu Instância Gerenciada de SQL por meio do SSMS (SQL Server Management Studio) usando um dos seguintes métodos:
Autentique usando sua conta Microsoft Entra.
No painel esquerdo, localize o banco de dados SQL que você está usando como fonte de dados para indexação e clique com o botão direito do mouse nele. Selecione Nova Consulta.
Na janela T-SQL, copie os comandos a seguir e inclua os colchetes ao redor do nome do serviço de pesquisa. Selecione Executar.
CREATE USER [insert your search service name here or user-assigned managed identity name] FROM EXTERNAL PROVIDER; EXEC sp_addrolemember 'db_datareader', [insert your search service name here or user-assigned managed identity name];
Se posteriormente você alterar a identidade do sistema de serviço de pesquisa após atribuir permissões, deverá remover a associação de função e remover o usuário no banco de dados SQL e, em seguida, repetir a atribuição de permissão. Para remover a associação de função e o usuário, execute os seguintes comandos:
sp_droprolemember 'db_datareader', [insert your search service name or user-assigned managed identity name];
DROP USER IF EXISTS [insert your search service name or user-assigned managed identity name];
Adicionar uma atribuição de função
Nesta etapa, você concede ao seu serviço Pesquisa de IA do Azure permissão para ler dados de seu Instância Gerenciada de SQL.
No portal do Azure, acesse sua página de Instância Gerenciada de SQL.
Selecione controle de acesso (IAM).
Selecione Adicionar>atribuição de função.
Mostrando a captura de tela da página de Controle de Acesso.
Selecione a função Leitor .
Deixe Atribuir acesso a como usuário, grupo ou entidade de serviço do Microsoft Entra.
Se você estiver usando uma identidade gerenciada atribuída pelo sistema, pesquise seu serviço de busca e selecione-o. Se você estiver usando uma identidade gerenciada atribuída pelo usuário, pesquise o nome da identidade gerenciada atribuída pelo usuário e selecione-a. Selecione Salvar.
Aqui está um exemplo para Instância Gerenciada de SQL usando uma identidade gerenciada atribuída pelo sistema:
Criar a fonte de dados
Crie a fonte de dados e forneça uma identidade gerenciada atribuída pelo sistema.
Identidade gerenciada atribuída pelo sistema
A API REST, Azure portal e o .NET SDK dão suporte à identidade gerenciada atribuída pelo sistema.
Quando você se conecta usando uma identidade gerenciada atribuída pelo sistema, a única alteração na definição da fonte de dados é o formato da propriedade "credenciais". Forneça um nome de Catálogo Inicial ou Banco de Dados e uma ResourceId que não tenha chave de conta nem senha. O ResourceId deve incluir a ID da assinatura de Instância Gerenciada de SQL, o grupo de recursos de SQL Managed instance e o nome do banco de dados SQL.
Veja um exemplo de como criar uma fonte de dados para indexar dados de uma Instância Gerenciada do SQL usando a API REST Create Data Source e uma cadeia de conexão de identidade gerenciada. O formato da cadeia de conexão de identidade gerenciada é o mesmo para a API REST, o SDK do .NET e o portal do Azure.
POST https://[service name].search.windows.net/datasources?api-version=2026-04-01
Content-Type: application/json
api-key: [admin key]
{
"name" : "sql-mi-datasource",
"type" : "azuresql",
"credentials" : {
"connectionString" : "Database=[SQL database name];ResourceId=/subscriptions/[subscription ID]/resourcegroups/[resource group name]/providers/Microsoft.Sql/managedInstances/[SQL Managed Instance name];Connection Timeout=100;"
},
"container" : {
"name" : "my-table"
}
}
Criar o índice
O índice especifica os campos em um documento, atributos e outros constructos que moldam a experiência de pesquisa.
Aqui está uma chamada à API REST criar índice com um campo pesquisável booktitle :
POST https://[service name].search.windows.net/indexes?api-version=2026-04-01
Content-Type: application/json
api-key: [admin key]
{
"name" : "my-target-index",
"fields": [
{ "name": "id", "type": "Edm.String", "key": true, "searchable": false },
{ "name": "booktitle", "type": "Edm.String", "searchable": true, "filterable": false, "sortable": false, "facetable": false }
]
}
Criar o indexador
Um indexador conecta uma fonte de dados com um índice de pesquisa de destino e fornece um agendamento para automatizar a atualização de dados. Depois de criar o índice e a fonte de dados, crie o indexador.
Aqui está uma chamada Create Indexer API REST com uma definição de indexador SQL do Azure. O indexador é executado quando você envia a solicitação.
POST https://[service name].search.windows.net/indexers?api-version=2026-04-01
Content-Type: application/json
api-key: [admin key]
{
"name" : "sql-mi-indexer",
"dataSourceName" : "sql-mi-datasource",
"targetIndexName" : "my-target-index"
}
Solucionando problemas
Se você receber um erro quando o indexador tentar se conectar à fonte de dados que diz que o cliente não tem permissão para acessar o servidor, consulte os erros comuns do indexador.
Você também pode descartar quaisquer problemas de firewall tentando a conexão com e sem restrições em vigor.