Keresési szolgáltatás csatlakoztatása más Azure-erőforrásokhoz felügyelt identitás használatával

Az Azure AI-Search szolgáltatás konfigurálhatja más Azure-erőforrásokhoz való csatlakozáshoz egy rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitás és egy Azure-szerepkör-hozzárendelés használatával. A felügyelt identitások és szerepkör-hozzárendelések nem igénylik a titkos kulcsok és hitelesítő adatok átadását egy kapcsolati sztring vagy kódban.

Előfeltételek

  • Keresési szolgáltatás az alapszintű vagy annál magasabb szinten.

  • Olyan Azure-erőforrás, amely érvényes szerepkör-hozzárendeléssel rendelkező Microsoft Entra-bejelentkezésből érkező kérelmeket fogad.

Támogatott esetek

Az Azure AI Search rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást használhat az Azure-erőforrások kimenő kapcsolatain. A rendszer által felügyelt identitás akkor van feltüntetve, ha egy kapcsolati sztring egy Microsoft Entra ID-t ismerő szolgáltatás vagy alkalmazás egyedi erőforrás-azonosítója. A felhasználó által hozzárendelt felügyelt identitás egy "identity" tulajdonságon keresztül van megadva.

A keresési szolgáltatás az Azure Storage-t használja indexelő adatforrásként és adatgyűjtőként a hibakeresési munkamenetekhez, a bővítési gyorsítótárazáshoz és a tudástárhoz. A tárolóba visszaíró keresési funkciókhoz a felügyelt identitásnak közreműködői szerepkör-hozzárendelésre van szüksége a "Szerepkör hozzárendelése" szakaszban leírtak szerint.

Eset Rendszer által felügyelt identitás Felhasználó által hozzárendelt felügyelt identitás (előzetes verzió)
Indexelőkapcsolatok támogatott Azure-adatforrásokhoz1,3 Igen Igen
Azure Key Vault ügyfél által felügyelt kulcsokhoz Igen Igen
Hibakeresési munkamenetek (az Azure Storage-ban üzemeltetve)1 Igen Nem
Bővítési gyorsítótár (az Azure Storage-ban üzemeltetve)1,2 Igen Igen
Knowledge Store (az Azure Storage-ban üzemeltetve)1 Igen Igen
Egyéni készségek (az Azure Functionsben vagy azzal egyenértékűben üzemeltetve) Igen Igen
Azure OpenAI beágyazási készség Igen Igen
Azure OpenAI-vektorizáló Igen Igen

1 A keresés és a tárolás közötti kapcsolat esetén a hálózati biztonsági konfiguráció korlátozza, hogy milyen típusú felügyelt identitást használhat. A megbízható szolgáltatáskivétel vagy erőforráspéldány-szabály használatával csak egy rendszer által felügyelt identitás használható a tárterülettel való azonos régiós kapcsolathoz. Részletekért lásd : Hozzáférés hálózati védelem alatt álló tárfiókhoz .

2 Az adatnövelési gyorsítótár megadásának egyik módszere az Adatok importálása varázslóban található. A varázsló jelenleg nem fogad el felügyelt identitást kapcsolati sztring a bővítési gyorsítótárhoz. A varázsló befejeződése után azonban frissítheti a kapcsolati sztring az indexelő JSON-definíciójában, így megadhat egy rendszert vagy egy felhasználó által hozzárendelt felügyelt identitást, majd újrafuttathatja az indexelőt.

3 Vegye figyelembe, hogy az Azure Storage-fiók kulcsainak letiltása jelenleg nem támogatott az adatforrásként használt Azure Table esetében. Bár a felügyelt identitással nem lehet explicit módon megadni a tárkulcsokat, az AI keresési szolgáltatás továbbra is a kulcsokat használja ehhez a megvalósításhoz.

Rendszer által felügyelt identitás létrehozása

Ha engedélyezve van a rendszer által hozzárendelt felügyelt identitás, az Azure létrehoz egy identitást a keresési szolgáltatáshoz, amely felhasználható az ugyanazon bérlőn és előfizetésen belüli más Azure-szolgáltatásokban való hitelesítésre. Ezt az identitást ezután azure-beli szerepköralapú hozzáférés-vezérlési (Azure RBAC-) hozzárendelésekben használhatja, amelyek lehetővé teszik az adatokhoz való hozzáférést az indexelés során.

A rendszer által hozzárendelt felügyelt identitás egyedi a keresési szolgáltatásban, és a szolgáltatáshoz van kötve annak élettartama alatt.

  1. Jelentkezzen be az Azure Portalra , és keresse meg a keresési szolgáltatást.

  2. A Gépház területen válassza az Identitás lehetőséget.

  3. A Rendszerhez rendelt lap Állapot csoportjában válassza a Be lehetőséget.

  4. Válassza a Mentés lehetőséget.

    Képernyőkép az Azure Portal Identitás lapjáról.

    A mentés után megjelenik egy objektumazonosító, amely hozzá lett rendelve a keresési szolgáltatáshoz.

    Képernyőkép egy rendszeridentitás-objektum azonosítóról.

Felhasználó által hozzárendelt felügyelt identitás létrehozása (előzetes verzió)

A felhasználó által hozzárendelt felügyelt identitás az Azure-beli erőforrás. Ez akkor hasznos, ha részletesebbre van szüksége a szerepkör-hozzárendelésekben, mert különálló identitásokat hozhat létre különböző alkalmazásokhoz és forgatókönyvekhez.

Fontos

Ez a funkció nyilvános előzetes verzióban, kiegészítő használati feltételek mellett érhető el. A felhasználó által hozzárendelt felügyelt identitások jelenleg nem támogatottak a hálózati védelem alatt álló tárfiókhoz való csatlakozáshoz. A keresési kérelemhez jelenleg nyilvános IP-cím szükséges.

  1. Jelentkezzen be az Azure Portalra

  2. Válassza a + Erőforrás létrehozása lehetőséget.

  3. A "Search szolgáltatás és piactér" keresősávon keresse meg a "Felhasználó által hozzárendelt felügyelt identitás" kifejezést, majd válassza a Létrehozás lehetőséget.

    Képernyőkép a felhasználó által hozzárendelt felügyelt identitás csempéről az Azure Marketplace-en.

  4. Válassza ki az előfizetést, az erőforráscsoportot és a régiót. Adjon egy leíró nevet az identitásnak.

  5. Válassza a Létrehozás lehetőséget , és várja meg, amíg az erőforrás üzembe helyezése befejeződik.

    A következő néhány lépésben hozzárendeli a felhasználó által hozzárendelt felügyelt identitást a keresési szolgáltatáshoz.

  6. A keresési szolgáltatás lap Gépház területén válassza az Identitás lehetőséget.

  7. A Felhasználó által hozzárendelt lapon válassza a Hozzáadás lehetőséget.

  8. Válassza ki az előfizetést, majd válassza ki az előző lépésben létrehozott, felhasználó által hozzárendelt felügyelt erőforrást.

Tűzfalhozzáférés engedélyezése

Ha az Azure-erőforrás tűzfal mögött található, győződjön meg arról, hogy van egy bejövő szabály, amely fogadja a keresési szolgáltatástól érkező kéréseket.

  • Az Azure Blob Storage-hoz vagy az Azure Data Lake Storage Gen2-hez való azonos régiós kapcsolatokhoz használjon egy rendszer által felügyelt identitást és a megbízható szolgáltatáskivételt. Igény szerint konfigurálhat egy erőforráspéldány-szabályt a kérelmek felvételére.

  • Minden más erőforráshoz és kapcsolathoz konfiguráljon egy IP-tűzfalszabályt, amely engedélyezi a Kereséstől érkező kéréseket. A részletekért tekintse meg az Indexer hozzáférését az Azure hálózati biztonsági funkciói által védett tartalmakhoz.

Szerepkör hozzárendelése

A felügyelt identitásokat olyan Azure-szerepkörrel kell párosítani, amely meghatározza az Azure-erőforrás engedélyeit.

  • Adatolvasói engedélyekre van szükség az indexelő adatkapcsolataihoz és egy ügyfél által felügyelt kulcshoz való hozzáféréshez az Azure Key Vaultban.

  • Közreműködői (írási) engedélyekre van szükség azokhoz az AI-bővítési funkciókhoz, amelyek az Azure Storage-t használják a hibakeresési munkamenet adatainak tárolására, a bővítés gyorsítótárazására és a hosszú távú tartalomtárolásra egy tudástárban.

Az alábbi lépések az Azure Storage-hoz tartoznak. Ha az erőforrás Azure Cosmos DB vagy Azure SQL, a lépések hasonlóak.

  1. Jelentkezzen be az Azure Portalra , és keresse meg azt az Azure-erőforrást , amelyhez a keresési szolgáltatásnak hozzáféréssel kell rendelkeznie.

  2. Az Azure Storage-ban válassza a hozzáférés-vezérlést (AIM) a bal oldali navigációs panelen.

  3. Válassza a Szerepkör-hozzárendelés hozzáadása lehetőséget.

  4. A Szerepkör lapon válassza ki a keresési szolgáltatáshoz szükséges szerepköröket:

    Task Szerepkör-hozzárendelés
    Blobindexelés indexelő használatával Storage Blob-adatolvasó hozzáadása
    ADLS Gen2 indexelés indexelő használatával Storage Blob-adatolvasó hozzáadása
    Táblázatindexelés indexelő használatával Olvasó és adathozzáférés hozzáadása
    Fájlindexelés indexelő használatával Olvasó és adathozzáférés hozzáadása
    Írás tudástárba Adja hozzá a Storage Blob DataContributort az objektum- és fájlvetítésekhez, a táblavetületekhez pedig a Reader and Data Accesst .
    Írás bővítési gyorsítótárba Storage Blob-adat közreműködő hozzáadása
    Hibakeresési munkamenet állapotának mentése Storage Blob-adat közreműködő hozzáadása
    Adatok beágyazása (vektorizálás) az Azure OpenAI-beágyazási modellek használatával Cognitive Services OpenAI-felhasználó hozzáadása
  5. A Tagok lapon válassza a Felügyelt identitás lehetőséget.

  6. Válassza ki a tagokat. A Felügyelt identitás kiválasztása lapon válassza ki az előfizetést, majd szűrjön szolgáltatástípus szerint, majd válassza ki a szolgáltatást. Csak a felügyelt identitással rendelkező szolgáltatások lesznek kiválaszthatók.

    Képernyőkép a felügyelt identitás kiválasztása panelről a szerepkör-hozzárendelési varázslóban.

  7. Válassza az Áttekintés + hozzárendelés lehetőséget.

példák Csatlakozás ion sztringre

Miután definiált egy felügyelt identitást a keresési szolgáltatáshoz, és szerepkör-hozzárendelést kapott, a kimenő kapcsolatok módosíthatók a másik Azure-erőforrás egyedi erőforrás-azonosítójának használatára. Íme néhány példa a különböző forgatókönyvek kapcsolati sztring.

Blob adatforrás (rendszer):

Az indexelő adatforrás tartalmaz egy "hitelesítő adatok" tulajdonságot, amely meghatározza, hogyan jön létre a kapcsolat az adatforrással. Az alábbi példa egy tárfiók egyedi erőforrás-azonosítóját megadva egy kapcsolati sztring mutat be. A Microsoft Entra ID a keresési szolgáltatás rendszer által felügyelt identitásával hitelesíti a kérést. Figyelje meg, hogy a kapcsolati sztring nem tartalmaz tárolót. Egy adatforrás-definícióban a tároló neve a "container" tulajdonságban van megadva (nem jelenik meg), nem pedig a kapcsolati sztring.

"credentials": {
    "connectionString": "ResourceId=/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name};"
    }

Blob adatforrás (felhasználó):

Az Azure Storage-ba irányuló keresési kérések a felhasználó által hozzárendelt felügyelt identitással is kérhetők, jelenleg előzetes verzióban. A keresési szolgáltatás felhasználói identitása az "identity" tulajdonságban van megadva. Az identitás beállításához használhatja a portált vagy a REST API előzetes verzióját, a 2021-04-30-Preview verziót.

"credentials": {
    "connectionString": "ResourceId=/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name};"
    },
  . . .
"identity": {
    "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
    "userAssignedIdentity": "/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{user-assigned-managed-identity-name}"
  }

Tudástár:

A tudásbázis-definíciók kapcsolati sztring tartalmaznak az Azure Storage-hoz. Az Azure Storage-ban egy tudástár blobokként és táblákként hoz létre előrejelzéseket. A kapcsolati sztring a tárfiók egyedi erőforrás-azonosítója. Figyelje meg, hogy a sztring nem tartalmaz tárolókat vagy táblákat az elérési úton. Ezek a beágyazott vetítési definícióban vannak definiálva, nem a kapcsolati sztring.

"knowledgeStore": {
  "storageConnectionString": "ResourceId=/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/storage-account-name};"
}

Bővítési gyorsítótár:

Az indexelő létrehozza, felhasználja és megjegyzi a gyorsítótárazott bővítésekhez használt tárolót. Nem szükséges a tárolót belefoglalni a gyorsítótárba kapcsolati sztring. Az objektumazonosítót a keresőszolgáltatás Identitás lapján találja a portálon.

"cache": {
  "enableReprocessing": true,
  "storageConnectionString": "ResourceId=/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name};"
}

Hibakeresési munkamenet:

A hibakeresési munkamenet a portálon fut, és a munkamenet indításakor kapcsolati sztring vesz igénybe. Az alábbi példához hasonló sztringet illeszthet be.

"ResourceId=/subscriptions/{subscription-ID}/resourceGroups/{resource-group-name}/providers/Microsoft.Storage/storageAccounts/{storage-account-name}/{container-name};",

Egyéni képesség:

Egy egyéni képesség egy egyéni kódot üzemeltető Azure-függvény vagy alkalmazás végpontját célozza meg. A végpont az egyéni képességdefinícióban van megadva. Az "authResourceId" jelenléte arra utasítja a keresőszolgáltatást, hogy felügyelt identitással csatlakozzon, és adja meg a célfüggvény vagy alkalmazás alkalmazásazonosítóját a tulajdonságban.

{
  "@odata.type": "#Microsoft.Skills.Custom.WebApiSkill",
  "description": "A custom skill that can identify positions of different phrases in the source text",
  "uri": "https://contoso.count-things.com",
  "authResourceId": "<Azure-AD-registered-application-ID>",
  "batchSize": 4,
  "context": "/document",
  "inputs": [ ... ],
  "outputs": [ ...]
}

Azure OpenAI beágyazási képesség és Azure OpenAI-vektorizáló:

Az Azure OpenAI beágyazási képessége és vektorizálója az AI Searchben a beágyazási modellt üzemeltető Azure OpenAI-szolgáltatás végpontját célozza meg. A végpont az Azure OpenAI beágyazási képességdefiníciójában és/vagy az Azure OpenAI vektorizáló definíciójában van megadva. A rendszer által felügyelt identitást akkor használja a rendszer, ha konfigurálva van, és ha az "apikey" és az "authIdentity" üres. Az "authIdentity" tulajdonság csak a felhasználó által hozzárendelt felügyelt identitásokhoz használható.

{
  "@odata.type": "#Microsoft.Skills.Text.AzureOpenAIEmbeddingSkill",
  "description": "Connects a deployed embedding model.",
  "resourceUri": "https://url.openai.azure.com/",
  "deploymentId": "text-embedding-ada-002",
  "inputs": [
    {
      "name": "text",
      "source": "/document/content"
    }
  ],
  "outputs": [
    {
      "name": "embedding"
    }
  ]
}
 "vectorizers": [
    {
      "name": "my_azure_open_ai_vectorizer",
      "kind": "azureOpenAI",
      "azureOpenAIParameters": {
        "resourceUri": "https://url.openai.azure.com",
        "deploymentId": "text-embedding-ada-002"
      }
    }
  ]

Lásd még