Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Note
Azure AI Vyhledávač je k dispozici prostřednictvím portálu Azure, rozhraní REST API a Sady Azure SDK. Podporuje také Foundry IQ, spravovanou znalostní vrstvu, která transformuje podnikový obsah na opakovaně použitelné znalostní báze s podporou oprávnění pro agenty na portálu Microsoft Foundry.
Tento článek popisuje, jak nastavit připojení indexeru Azure AI Vyhledávač k SQL Managed Instance pomocí spravované identity místo zadání přihlašovacích údajů v připojovací řetězec.
Můžete použít spravovanou identitu přiřazenou systémem nebo spravovanou identitu přiřazenou uživatelem. Spravované identity jsou přihlášení v Microsoft Entra a vyžadují přiřazení rolí Azure pro přístup k datům v SQL Managed Instance.
Než se o této funkci dozvíte více, měli byste porozumět tomu, co je indexer a jak nastavit indexer pro váš zdroj dat. Další informace najdete v tématech Inde-xeři v Azure AI Vyhledávač a Indexování dat z Azure SQL Database.
Požadavky
Vytvořte spravovanou identitu pro vyhledávací službu.
Microsoft Entra správcovská role na SQL Managed Instance:
Pokud chcete přiřadit oprávnění ke čtení pro SQL Managed Instance, musíte být globálním správcem Azure s SQL Managed Instance. Viz Konfigurování a správa ověřování Microsoft Entra pomocí SQL Managed Instance a podle pokynů zřiďte správce Microsoft Entra (SQL Managed Instance).
Konfigurovat veřejný koncový bod a skupinu zabezpečení sítě v SQL Managed Instance povolit připojení z Azure AI Vyhledávač. Připojení prostřednictvím sdíleného privátního propojení při použití spravované identity se v současné době nepodporuje.
Přiřazení oprávnění ke čtení databáze
Pomocí těchto kroků přiřaďte spravované identitě systému vyhledávací služby oprávnění ke čtení spravované databáze SQL.
Připojte se k SQL Managed Instance prostřednictvím SQL Server Management Studio (SSMS) pomocí jedné z následujících metod:
Ověřte se pomocí svého účtu Microsoft Entra.
V levém podokně vyhledejte databázi SQL, kterou používáte jako zdroj dat pro indexování, a klikněte na ni pravým tlačítkem myši. Vyberte Nový dotaz.
V okně T-SQL zkopírujte následující příkazy a zahrňte závorky kolem názvu vyhledávací služby. Vyberte Spustit.
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];
Pokud později změníte identitu systému vyhledávací služby po přiřazení oprávnění, musíte odebrat členství v roli a odebrat uživatele v databázi SQL a potom opakovat přiřazení oprávnění. Pokud chcete odebrat členství role a uživatele, spusťte následující příkazy:
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];
Přidejte přiřazení role
V tomto kroku udělíte službě Azure AI Vyhledávač oprávnění ke čtení dat z vašeho SQL Managed Instance.
Na portálu Azure přejděte na stránku SQL Managed Instance.
Vyberte Řízení přístupu (IAM).
Vyberte Přidat>Přidat přiřazení role.
Vyberte roli Čtenář .
Nechte Přiřazení přístupu jako uživatele, skupiny nebo služebního hlavního objektu Microsoft Entra.
Pokud používáte spravovanou identitu přiřazenou systémem, vyhledejte vyhledávací službu a vyberte ji. Pokud používáte spravovanou identitu přiřazenou uživatelem, vyhledejte název spravované identity přiřazené uživatelem a vyberte ji. Vyberte Uložit.
Tady je příklad SQL Managed Instance pomocí spravované identity přiřazené systémem:
Vytvoření zdroje dat
Vytvořte zdroj dat a zadejte spravovanou identitu přiřazenou systémem.
Spravovaná identita přiřazená systémem
Rozhraní REST API, portál Azure a .NET SDK podporují spravovanou identitu přiřazenou systémem.
Když se připojíte pomocí spravované identity přiřazené systémem, jedinou změnou definice zdroje dat je formát vlastnosti "credentials". Zadáte počáteční název katalogu nebo databáze a ResourceId název, který nemá žádný klíč účtu nebo heslo.
ResourceId musí obsahovat ID předplatného SQL Managed Instance, skupinu prostředků SQL Managed instance a název databáze SQL.
Tady je příklad vytvoření zdroje dat pro indexování dat z SQL Managed Instance pomocí rozhraní Create Data Source REST API a spravované připojovací řetězec identity. Spravované identity připojovací řetězec má stejný formát pro rozhraní REST API, .NET SDK a portál 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"
}
}
Vytvoření indexu
Index určuje pole v dokumentu, atributech a dalších konstruktorech, které tvarují vyhledávací prostředí.
Tady je volání rozhraní REST API pro vytvoření indexu s prohledávatelným booktitle polem:
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 }
]
}
Vytvoření indexeru
Indexer propojuje zdroj dat s cílovým vyhledávacím indexem a poskytuje plán pro automatizaci aktualizace dat. Po vytvoření indexu a zdroje dat vytvořte indexer.
Tady je volání rozhraní REST API Create Indexer s definicí indexeru Azure SQL. Indexer se spustí při odeslání požadavku.
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"
}
Řešení potíží
Pokud se při pokusu indexeru o připojení ke zdroji dat zobrazí chyba s informací, že klient nemá povolený přístup k serveru, podívejte se na běžné chyby indexeru.
Můžete také vyloučit případné problémy s bránou firewall vyzkoušením připojení s omezeními i bez nich.