Notatka
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Note
Wyszukiwanie AI platformy Azure jest dostępna za pośrednictwem portalu Azure, interfejsów API REST i Azure SDKs. Stanowi również podstawę Foundry IQ — zarządzanej warstwy wiedzy, która przekształca treści przedsiębiorstwa w bazy wiedzy do wielokrotnego użytku, z uwzględnieniem uprawnień, dla agentów w portalu Microsoft Foundry.
W tym artykule opisano sposób konfigurowania połączenia indeksatora Wyszukiwanie AI platformy Azure z SQL Managed Instance przy użyciu tożsamości zarządzanej zamiast podawania poświadczeń w parametry połączenia.
Można użyć tożsamości zarządzanej przypisanej przez system lub tożsamości zarządzanej przypisanej przez użytkownika. Tożsamości zarządzane to loginy Microsoft Entra i wymagają przypisania ról w Azure, aby uzyskać dostęp do danych w SQL Managed Instance.
Zanim dowiesz się więcej o tej funkcji, należy zrozumieć, czym jest indeksator i jak skonfigurować indeksator dla źródła danych. Aby uzyskać więcej informacji, zobacz Indeksatory w Wyszukiwanie AI platformy Azure oraz Indeksowanie danych z bazy danych Azure SQL.
Wymagania wstępne
Utwórz tożsamość zarządzaną dla usługi wyszukiwania.
rola administratora Microsoft Entra w ramach usługi SQL Managed Instance
Aby przypisać uprawnienia do odczytu na instancji zarządzanej SQL, musisz posiadać rolę globalnego administratora Azure oraz mieć instancję zarządzaną SQL. Zobacz Konfigurowanie uwierzytelniania Microsoft Entra i zarządzanie nim za pomocą SQL Managed Instance i wykonaj kroki aprowizacji administratora Microsoft Entra (SQL Managed Instance).
Konfiguruj publiczny punkt końcowy i sieciową grupę zabezpieczeń w SQL Managed Instance aby zezwolić na połączenia z Wyszukiwanie AI platformy Azure. Nawiązywanie połączenia za pośrednictwem udostępnionego łącza prywatnego w przypadku korzystania z tożsamości zarządzanej nie jest obecnie obsługiwane.
Przypisywanie uprawnień do odczytywania bazy danych
Wykonaj następujące kroki, aby przypisać uprawnienie tożsamości zarządzanej systemu usługi wyszukiwania do odczytu bazy danych zarządzanej SQL.
Nawiąż połączenie z SQL Managed Instance za pośrednictwem SQL Server Management Studio (SSMS) przy użyciu jednej z następujących metod:
Uwierzytelnianie przy użyciu konta Microsoft Entra.
W okienku po lewej stronie znajdź bazę danych SQL używaną jako źródło danych do indeksowania i kliknij ją prawym przyciskiem myszy. Wybierz pozycję Nowe zapytanie.
W oknie języka T-SQL skopiuj następujące polecenia i uwzględnij nawiasy wokół nazwy usługi wyszukiwania. Wybierz pozycję Wykonaj.
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];
Jeśli później zmienisz tożsamość systemu usługi wyszukiwania po przypisaniu uprawnień, musisz usunąć członkostwo roli i usunąć użytkownika w bazie danych SQL, a następnie powtórzyć przypisanie uprawnień. Aby usunąć członkostwo w roli i użytkownika, uruchom następujące polecenia:
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];
Dodawanie przypisania roli
W tym kroku przyznasz usłudze Wyszukiwanie AI platformy Azure uprawnienia do odczytywania danych z SQL Managed Instance.
W portalu Azure przejdź do strony SQL Managed Instance.
Wybierz pozycję Kontrola dostępu (IAM).
Wybierz Dodaj>Dodaj przypisanie roli.
Wybierz rolę Czytelnik .
Pozostaw Przypisanie dostępu do jako użytkownika, grupy lub obiektu zabezpieczeń Microsoft Entra.
Jeśli używasz tożsamości zarządzanej przypisanej przez system, wyszukaj usługę wyszukiwania i wybierz ją. Jeśli używasz tożsamości zarządzanej przypisanej przez użytkownika, wyszukaj nazwę tożsamości zarządzanej przypisanej przez użytkownika i wybierz ją. Wybierz pozycję Zapisz.
Oto przykład SQL Managed Instance przy użyciu tożsamości zarządzanej przypisanej przez system:
Tworzenie źródła danych
Utwórz źródło danych i podaj tożsamość zarządzaną przypisaną przez system.
Tożsamość zarządzana przypisana przez system
Interfejs API REST, portal Azure oraz .NET SDK obsługują tożsamość zarządzaną przypisaną przez system.
Podczas nawiązywania połączenia przy użyciu tożsamości zarządzanej przypisanej przez system jedyną zmianą definicji źródła danych jest format właściwości "credentials". Należy podać nazwę początkowego katalogu lub bazy danych oraz ResourceId, które nie ma klucza konta ani hasła.
ResourceId musi zawierać identyfikator subskrypcji SQL Managed Instance, grupę zasobów SQL Managed instance i nazwę bazy danych SQL.
Oto przykład, jak utworzyć źródło danych do indeksowania danych z instancji zarządzanej SQL za pomocą interfejsu API REST Tworzenie źródła danych i ciągu połączenia tożsamości zarządzanej. Format ciągu połączenia dla tożsamości zarządzanej jest taki sam dla interfejsu API REST, pakietu SDK .NET i portalu 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"
}
}
Tworzenie indeksu
Indeks określa pola w dokumencie, atrybutach i innych konstrukcjach, które kształtuje środowisko wyszukiwania.
Oto wywołanie REST API Create Index z przeszukiwalnym polem 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 }
]
}
Tworzenie indeksatora
Indeksator łączy źródło danych z docelowym indeksem wyszukiwania i udostępnia harmonogram automatyzowania odświeżania danych. Po utworzeniu indeksu i źródła danych utwórz indeksator.
Oto wywołanie Tworzenie indeksatora interfejsu API REST z definicją indeksatora Azure SQL. Indeksator jest uruchamiany podczas przesyłania żądania.
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"
}
Rozwiązywanie problemów
Jeśli wystąpi błąd, gdy indeksator spróbuje nawiązać połączenie ze źródłem danych z informacją, że klient nie może uzyskać dostępu do serwera, zobacz typowe błędy indeksatora.
Możesz również wykluczyć wszelkie problemy z zaporą, próbując nawiązać połączenie zarówno z włączonymi, jak i wyłączonymi ograniczeniami.