Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Note
Поиск с использованием ИИ Azure доступна через портал Azure, REST API и Azure SDKs. Он также лежит в основе Foundry IQ — управляемого слоя знаний, который преобразует корпоративный контент в многократно используемые базы знаний с учетом разрешений доступа для агентов на портале Microsoft Foundry.
В этой статье описывается, как настроить подключение индексатора Поиск с использованием ИИ Azure к Управляемый экземпляр SQL с помощью управляемого удостоверения вместо предоставления учетных данных в строка подключения.
Вы можете использовать управляемое удостоверение, назначаемое системой, или управляемое удостоверение, назначаемое пользователем. Управляемые удостоверения — это логины Microsoft Entra и требуют назначения ролей Azure для доступа к данным в Управляемый экземпляр SQL.
Прежде чем узнать больше об этой функции, необходимо понять, что такое индексатор и как настроить индексатор для источника данных. Дополнительные сведения см. в разделе Indexers в Поиск с использованием ИИ Azure и индексация данных из База данных SQL Azure.
Необходимые условия
Создайте учетную запись с управляемой идентификацией для вашего поискового сервиса.
роль администратора Microsoft Entra в Управляемый экземпляр SQL:
Чтобы назначить доступ на чтение в Управляемый экземпляр SQL, необходимо быть глобальным администратором в Azure и иметь Управляемый экземпляр SQL. См. статью Настройка и управление аутентификацией Microsoft Entra с помощью Управляемый экземпляр SQL и следуйте инструкциям для подготовки администратора Microsoft Entra (Управляемый экземпляр SQL).
Настройте общедоступную конечную точку и группу безопасности сети в Управляемый экземпляр SQL, чтобы разрешить подключения из Поиск с использованием ИИ Azure. Подключение через общую приватную ссылку при использовании управляемого удостоверения в настоящее время не поддерживается.
Назначение разрешений для чтения базы данных
Выполните следующие действия, чтобы назначить управляемому удостоверению системы поиска разрешение на чтение управляемой базы данных SQL.
Подключитесь к Управляемый экземпляр SQL через SQL Server Management Studio (SSMS) с помощью одного из следующих методов:
Проверка подлинности с помощью учетной записи Microsoft Entra.
На панели слева найдите базу данных SQL, которую вы используете в качестве источника данных для индексирования и щелкните его правой кнопкой мыши. Выберите новый запрос.
В окне T-SQL скопируйте следующие команды и добавьте квадратные скобки по имени службы поиска. Выберите "Выполнить".
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];
Если позже вы измените удостоверение системы службы поиска после назначения разрешений, необходимо удалить членство в роли и удалить пользователя в базе данных SQL, а затем повторить назначение разрешений. Чтобы удалить членство в роли и пользователя, выполните следующие команды:
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];
Добавление назначения ролей
На этом шаге вы предоставляете Поиск с использованием ИИ Azure службе разрешение на чтение данных из Управляемый экземпляр SQL.
На портале Azure перейдите на страницу Управляемый экземпляр SQL.
Выберите Управление доступом (IAM).
Выберите Добавить>Добавить назначение роли.
Выберите роль читателя .
Оставьте Назначение доступа к как пользователю Microsoft Entra, группе или субъекту-службы.
Если вы используете управляемое удостоверение, назначаемое системой, найдите службу поиска и выберите ее. Если вы используете управляемое удостоверение, назначаемое пользователем, найдите имя управляемого удостоверения, назначаемого пользователем, и выберите его. Нажмите кнопку "Сохранить".
Ниже приведен пример Управляемый экземпляр SQL с помощью управляемого удостоверения, назначаемого системой:
Создание источника данных
Создайте источник данных и укажите управляемое удостоверение, назначаемое системой.
Назначаемое системой управляемое удостоверение
API REST, Azure портал и .NET SDK поддерживают управляемое удостоверение, назначаемое системой.
При подключении с помощью управляемого удостоверения, назначаемого системой, единственное изменение определения источника данных — это формат свойства "credentials". Вы предоставляете имя начального каталога или базы данных, а ResourceId не имеет ключа учетной записи или пароля.
ResourceId должен содержать идентификатор подписки Управляемый экземпляр SQL, группу ресурсов SQL Managed instance и имя базы данных SQL.
Ниже приведен пример создания источника данных для индексирования данных из управляемого экземпляра SQL с помощью REST API Create Data Source и строки подключения управляемой идентификации. Формат строки подключения для управляемого удостоверения одинаков для REST API, SDK .NET и портала 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"
}
}
Создание индекса
Индекс задает поля в документе, атрибутах и других конструкциях, которые формируют интерфейс поиска.
Ниже приведен вызов REST API для создания индекса с полем для 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 }
]
}
Создание индексатора
Индексатор подключает источник данных с целевым индексом поиска и предоставляет расписание для автоматизации обновления данных. После создания индекса и источника данных создайте индексатор.
Пример вызова REST API Create Indexer с определением индексатора Azure SQL. Индексатор запускается при отправке запроса.
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"
}
Устранение неполадок
Если при подключении индексатора к источнику данных возникает ошибка, которая сообщает, что клиенту запрещен доступ к серверу, см. распространенные ошибки индексатора.
Вы также можете исключить любые проблемы с брандмауэром, проверив подключение как с ограничениями, так и без них.