Hitelesítés Egy Azure-függvényalkalmazásban az "Easy Auth" (Azure AI Keresés) használatával

Megjegyzés

Azure AI Keresés a Azure portálon, REST API-kon és Azure SDK-k keresztül érhető el. Emellett a Foundry IQ-t is támogatja, amely a vállalati tartalmakat újrafelhasználható, engedélytudatos tudásbázisokká alakítja át az Microsoft Foundry portálon található ügynökök számára.

Ez a cikk bemutatja, hogyan állíthat be indexelőkapcsolatot egy Azure-függvényalkalmazáshoz az Azure App Service beépített hitelesítési képességeivel, más néven "Easy Auth". Az Azure Functions-alkalmazások nagyszerű megoldást jelentenek az egyéni webes API-k üzemeltetéséhez, amelyekkel az Azure AI Keresés szolgáltatás bővítheti az indexelő futtatása során betöltött tartalmakat, vagy ha egyéni beágyazási modellt használ az integrált vektorizáláshoz, vektorizálhatja a tartalmat egy keresési lekérdezésben.

A keresési szolgáltatás rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitását használhatja, hogy hitelesítse magát az Azure Function alkalmazás ellen. Ehhez a megközelítéshez be kell állítania egy Microsoft Entra-azonosítós alkalmazásregisztrációt az Azure-függvényalkalmazás hitelesítésszolgáltatójaként való használatához, amelyet ebben a cikkben ismertetünk.

Előfeltételek

A Microsoft Entra ID-alkalmazás konfigurálása hitelesítési szolgáltatóként

Ahhoz, hogy a Microsoft Entra ID-t hitelesítési szolgáltatóként használja az Azure-függvényalkalmazáshoz, létre kell hozni egy alkalmazásregisztrációt. Két lehetőség közül választhat: automatikusan létrehozhat egyet az Azure-függvényalkalmazáson keresztül, vagy használhat egy meglévő alkalmazást. Ezekről a lépésekről az App Service dokumentációjában talál további információt.

A beállítástól függetlenül győződjön meg arról, hogy az alkalmazásregisztráció az alábbi lépések szerint van konfigurálva, hogy kompatibilis legyen az Azure AI Keresés szolgáltatással.

Győződjön meg arról, hogy az alkalmazásregisztráció konfigurálva van az alkalmazásazonosító URI-jával

Az alkalmazásregisztrációt egy alkalmazásazonosító URI-val kell konfigurálni, amely az Azure Funkció alkalmazások és az Azure AI Keresés jogkivonat közönségeként használható. Konfigurálja azt a api://<applicationId> formátumban. Ezt úgy teheti meg, hogy az alkalmazásregisztráció Áttekintés szakaszára lép, és beállítja az alkalmazásazonosító URI-mezőjét .

Képernyőkép az alkalmazásazonosító URI-val konfigurált alkalmazásregisztrációról.

Támogatott fióktípusok beállítása hitelesítéshez

Nyissa meg az alkalmazásregisztráció Hitelesítés szakaszát, és konfigurálja a támogatott fióktípusokat , hogy csak az alkalmazásregisztrációval azonos szervezeti címtárban lévő fiókok használhassák hitelesítésre.

Képernyőkép egy alkalmazásregisztrációról, amelyen a támogatott fióktípusok konfigurálva lesznek.

(Nem kötelező) Ügyfélkulcs konfigurálása

Az App Service azt javasolja, hogy használjon ügyfélkulcsot a hitelesítésszolgáltató alkalmazáshoz. A hitelesítés továbbra is titkos ügyfélkód nélkül működik, amíg a delegált engedélyek be vannak állítva. Az ügyfél titkos kódjának beállításához lépjen az alkalmazásregisztráció Tanúsítványok és titkos kulcsok szakaszára, és adjon hozzá egy új ügyféltitkot a jelen cikkben ismertetett módon.

Képernyőkép egy alkalmazásregisztrációról az ügyfélkód konfigurálásának lehetőségével.

Hatókör hozzáadása engedélyek delegálásához

Lépjen az API-k közzététele szakaszra, és konfigurálja az alkalmazásregisztrációt úgy, hogy olyan hatókörrel rendelkezzen, amely rendszergazdai és felhasználói engedélyeket delegál hozzá, hogy az kompatibilis legyen az indexelő hitelesítési folyamatával.

Képernyőkép az engedély hatókörét delegáló alkalmazásregisztrációról.

A delegált engedélyek hatókörének beállítása után az alkalmazásregisztráció API-engedélyek szakaszában láthatja, hogy a User.Read API be van állítva a Microsoft.Graph-on.

Képernyőkép egy delegált engedélyekkel rendelkező alkalmazásregisztrációról.

A Microsoft Entra ID hitelesítési szolgáltató konfigurálása az Azure-függvényalkalmazásban

A korábbi specifikációkban regisztrált ügyfélalkalmazással az Azure-függvényalkalmazás Microsoft Entra-azonosítójának hitelesítése az App Service dokumentációjának követésével állítható be. Lépjen az Azure-függvényalkalmazás Hitelesítési szakaszára a hitelesítési adatok beállításához.

Győződjön meg arról, hogy a következő beállítások konfigurálva vannak, hogy az Azure AI Keresés sikeresen hitelesíthető legyen az Azure-függvényalkalmazásban.

Hitelesítési beállítások konfigurálása

  • Győződjön meg arról, hogy az App Service-hitelesítés engedélyezve van
  • Az Azure-függvényalkalmazáshoz való hozzáférés korlátozása úgy, hogy hitelesítést igényeljen
  • A hitelesítés nélküli kéréseknél a HTTP 401: Jogosulatlan üzenet használata ajánlott.

Az alábbi képernyőkép egy Azure-függvényalkalmazás mintaalkalmazásának ezeket a konkrét beállításait emeli ki.

Képernyőkép a hitelesítési beállításokat konfigurált Azure-függvényalkalmazásról.

Microsoft Entra ID-hitelesítésszolgáltató hozzáadása

  • Adja hozzá a Microsoft Entra ID-t az Azure függvényalkalmazás hitelesítési szolgáltatójaként.
  • Hozzon létre egy új alkalmazásregisztrációt, vagy válasszon egy korábban konfigurált alkalmazásregisztrációt. Győződjön meg arról, hogy a dokumentum előző szakaszában szereplő irányelveknek megfelelően van konfigurálva.
  • Győződjön meg arról, hogy az Engedélyezett jogkivonat célközönségek szakaszban meg van adva az alkalmazásregisztráció alkalmazásazonosítójának URI-ja. A formátumnak meg kell egyezőnek lennie api://<applicationId> a korábban létrehozott alkalmazásregisztrációval konfigurált formátummal.
  • Ha szeretné, konfigurálhat más ellenőrzéseket is, amelyek kifejezetten az indexelőhöz való hozzáférést korlátozzák.

Képernyőkép egy Azure Functions alkalmazásról a Microsoft Entra azonosító-hitelesítési szolgáltatóval.

Egyéb ellenőrzések konfigurálása

  • Győződjön meg arról, hogy a konkrét Azure AI Keresés szolgáltatás objektum (fő) azonosítója van megadva az azonosságkövetelményként. Ehhez ellenőrizze, hogy az Adott identitásokból érkező kérelmek engedélyezése opció be legyen jelölve, és adja meg az identitásszakaszban az objektum (fő) azonosítóját.

Képernyőkép egy Azure AI-Search szolgáltatás identitásszakaszáról.

  • Az ügyfélalkalmazás-követelményben válassza az Adott ügyfélalkalmazás kéréseinek engedélyezése lehetőséget. Meg kell találnia az Azure AI Keresés szolgáltatás identitásának ügyfél-azonosítóját. Ehhez másolja át az előző lépésből a fő objektumazonosítót, és nézze meg a Microsoft Entra ID-bérlőn belül. Rendelkeznie kell egy egyező vállalati alkalmazással, amelynek áttekintő oldalán szerepel egy alkalmazásazonosító, amely a GUID azonosító, és amelyet ügyfélalkalmazás-követelményként kell megadni.

Képernyőkép egy Azure AI-Search szolgáltatás identitásának vállalati alkalmazásadatairól.

Megjegyzés

Ez a lépés az Azure-függvényalkalmazás legfontosabb konfigurációja, és helytelenül történő végrehajtása azt eredményezheti, hogy az indexelő nem fér hozzá az Azure-függvényalkalmazáshoz. Győződjön meg arról, hogy helyesen végzi el az identitás vállalati alkalmazásadatainak keresését, és a megfelelő helyeken adja meg az alkalmazásazonosítót és az objektum (egyszerű) azonosítót .

  • A bérlői követelményhez válassza ki azokat a beállításokat, amelyek megfelelnek a biztonsági helyzetnek. További információkért tekintse meg az App Service dokumentációját.

Kapcsolat beállítása az Azure-függvényalkalmazással

Attól függően, hogy az Azure-függvényalkalmazáshoz való kapcsolatot egyéni webes API-képességgel vagy egyéni webes API-vektorizálóval kell-e létesíteni, a JSON-definíció kissé eltérő. Mindkét esetben győződjön meg arról, hogy a megfelelő URI-t adja meg az Azure-függvényalkalmazáshoz, és állítsa be ugyanazt authResourceId az értéket, mint a hitelesítési szolgáltatóhoz konfigurált Engedélyezett jogkivonat-célközönség .

Attól függően, hogy rendszer által hozzárendelt identitással vagy felhasználó által hozzárendelt identitással szeretne csatlakozni, a szükséges tulajdonságok kissé eltérnek egymástól.

Rendszer által hozzárendelt identitás használata

Az alábbi példa egy Azure függvényalkalmazáshoz tartozó test függvény meghívására szolgál, ahol a keresési szolgáltatás rendszer által hozzárendelt identitása az "Easy Auth" használatával hitelesíthető.

"uri": "https://contoso-function-app.azurewebsites.net/api/test?",
"authResourceId": "api://00000000-0000-0000-0000-000000000000"

Felhasználó által hozzárendelt identitás használata

Íme egy példa ugyanarra a függvényre, ahol a felhasználó által hozzárendelt identitás az "Easy Auth" használatával hitelesíthető. Meg kell adnia a használni kívánt konkrét, felhasználó által hozzárendelt identitás erőforrás-azonosítóját a konfiguráció identity tulajdonságában.

"uri": "https://contoso-function-app.azurewebsites.net/api/test?",
"authResourceId": "api://00000000-0000-0000-0000-000000000000",
"identity" : { 
        "@odata.type": "#Microsoft.Azure.Search.DataUserAssignedIdentity",
        "userAssignedIdentity": "/subscriptions/[subscription-id]/resourcegroups/[rg-name]/providers/Microsoft.ManagedIdentity/userAssignedIdentities/[my-user-managed-identity-name]" 
    }

Megjegyzés

Mielőtt felhasználó által hozzárendelt identitást ad meg egy egyéni webes API-képességben vagy vektorizáló definícióban, rendelje hozzá az identitást a Azure AI Keresés szolgáltatáshoz.

Az engedélyek ellenőrzéséhez futtassa az indexelőt/vektorizálót

Egyéni webes API-képességek esetén az engedélyek érvényesítése az indexelő futásideje alatt megtörténik. Vektorosító esetén a vektoros lekérdezések akkor lesznek érvényesítve, amikor a Custom Web API vektorizáló használatával bocsátanak ki vektoros lekérdezést. A hitelesítéssel kapcsolatos konkrét problémák kizárásához az Azure-függvényalkalmazásban letilthatja a hitelesítésszolgáltatót, és gondoskodhat arról, hogy az indexelő/vektorizáló hívásai sikeresek legyenek.

  • Ha a hitelesítési problémák továbbra is fennállnak, győződjön meg arról, hogy a megfelelő identitásadatok – nevezetesen az Azure AI-Search szolgáltatás identitásának alkalmazásazonosítója, objektumazonosítója (egyszerű) azonosítója – meg van adva az Azure-függvényalkalmazás hitelesítési szolgáltatójában.