Azure AI Keresés támogatja a role-alapú hozzáférés-vezérlést Microsoft Entra ID keresztül. A szerepköralapú hozzáférés nem kötelező, de ajánlott. A másik lehetőség a kulcsalapú hitelesítés, amely az alapértelmezett.
Ha több szerepkört rendel egy biztonsági taghoz, az engedélyek egyesítve lesznek. A szerepkör-hozzárendelések minden eszközre és ügyfélkódtárra érvényesek.
Ez a cikk bemutatja, hogyan rendelhet hozzá beépített szerepköröket a szolgáltatásadminisztrációhoz, a fejlesztéshez, valamint az írásvédett lekérdezési és lekérési hozzáféréshez. Az egyéni szerepkörök létrehozásának és a szerepkör-hozzárendelések tesztelésének lépéseit is tartalmazza.
Előfeltételek
Egy Azure AI Keresés szolgáltatás (bármely régió és bármely szint) role-alapú hozzáférés engedélyezve.
Engedély Azure szerepkörök hozzárendeléséhez. Az alábbi szerepkörök bármelyike működik:
Tekintse át az előnyben részesített ügyfél szerepkör-hozzárendelési utasításait:
Azonosítsa az előnyben részesített ügyfél által igényelt hozzárendelt értéket. Az ügyfél és a hozzárendelt típustól függően ez az érték lehet egyszerű felhasználónév, csoportobjektum-azonosító, egyszerű szolgáltatásnév, szolgáltatásnév-alkalmazásazonosító vagy Microsoft Entra objektumazonosító.
Beépített szerepkörök
A szerepkörök olyan engedélyek gyűjteményei, amelyek hatással vannak a vezérlősíkra vagy az adatsíkra:
Vezérlősík: Szolgáltatások kiépítésére, konfigurálására és felügyeletére szolgáló műveletek. A vezérlősík műveletei közé tartozik a keresési szolgáltatások létrehozása vagy törlése, az API-kulcsok felsorolása, valamint a hálózati és hitelesítési beállítások kezelése. A Azure Resource Manager REST API-k, Search Management REST API-k és az ezzel egyenértékű Azure SDK ügyfélkódtárak segítségével érhető el.
Adatsík: Műveletek a keresési szolgáltatás végpontja ellen. Az adatsík-műveletek két kategóriába sorolhatók: az objektumkezelés és a tartalomhozzáférés. A Search Service REST API-kkal és ezzel egyenértékű Azure SDK ügyfélkódtárakon keresztül érhető el.
Szerepkör-leírások
Az alábbi beépített szerepkörök engedélyeket biztosítanak a Azure AI Keresés számára. A vezérlősík szerepkörei mindig elérhetők, míg az adatsík-szerepköröknek szerepköralapú hozzáférést kell engedélyezniük a keresési szolgáltatásban. A beépített szerepköröket kombinálhatja a szélesebb körű hozzáférés érdekében, vagy létrehozhat egy egyéni szerepkört a szükséges engedélyekkel.
| Szerepkör |
Repülőgép |
Leírás |
|
Tulajdonos |
Vezérlő |
- Teljes hozzáférés a vezérlősíkhoz, beleértve a szerepkörök hozzárendelését és a hitelesítési beállítások módosítását.
- Az előfizetés-rendszergazdák alapértelmezés szerint rendelkeznek ezzel a szerepkörsel.
- Kezelheti az API-kulcsokat.
- Nem hozhatók létre keresési objektumok, nem tölthetők be dokumentumok, nem kérdezhetők le indexek, és nem kérhetők le tudásbázisokból.
|
|
Közreműködő |
Vezérlő |
- A vezérlősíkhoz való hozzáférés szintje megegyezik a Tulajdonos szinttel, de a szerepkörök hozzárendelési lehetősége nélkül.
|
|
Olvasó |
Vezérlő |
- Írásvédett vezérlősík-hozzáférés.
- Megtekintheti a szolgáltatásmetrikákat és az objektumdefiníciókat.
- Nem tekintheti meg és nem kezelheti az API-kulcsokat, nem tölthet be dokumentumokat, nem kérdezhet le indexeket, és nem tud lekérni a tudásbázisokból.
|
|
Keresési szolgáltatás közreműködője |
Vezérlés és Adatok |
- Teljes vezérlősík-hozzáférés. Az adatsík-hozzáférés az objektumkezelésre korlátozódik.
- Létrehozhat indexeket, indexelőket, képességkészleteket, tudásbázisokat és más keresési objektumokat.
- A vezérlősík műveletein keresztül lekérheti a rendszergazdai és lekérdezési API-kulcsokat.
- Nem tölthetők be dokumentumok, nem kérdezhetők le indexek, és nem kérhetők le közvetlenül a tudásbázisokból szerepköralapú hozzáféréssel.
- A teljes engedélylistát a
Microsoft.Search/searchServices/* című témakörben találja.
|
|
Keresési index adatszolgáltatója |
Adatok |
- Olvasási-írási tartalomhozzáférés.
- Betöltheti a dokumentumokat, lekérdezheti az indexeket, és lekérheti a tudásbázisokat.
- Nem módosíthatók az objektumdefiníciók, és nem kérhetők le rendszergazdai kulcsok.
|
|
Keresési index adatolvasó |
Adatok |
- Írásvédett tartalomhozzáférés.
- Lekérdezheti az indexeket, és lekérheti a tudásbázisokból.
- Nem tölthetők be dokumentumok, nem módosíthatók az objektumdefiníciók, és nem kérhetők le a rendszergazdai kulcsok.
|
Fontos
- A tulajdonos, a közreműködő és a keresési szolgáltatás közreműködője lekérheti a rendszergazdai kulcsokat, amelyek teljes olvasási-írási hozzáférést biztosítanak az adatsíkhoz. Csak megbízható felhasználóknak adja meg ezeket a szerepköröket.
- Alapértelmezés szerint az adatsík-szerepkörök a keresési szolgáltatás összes indexére érvényesek. A keresési index adatszolgáltatója vagy a keresési index adatolvasója egyetlen indexre való hatókörének megadásáról lásd: Hozzáférés biztosítása egyetlen indexhez.
Az engedélyek összegzése
Az alábbi táblázat segítségével gyorsan megtalálhatja, hogy melyik szerepkör biztosítja a szükséges engedélyeket.
| Engedélyek |
Tulajdonos/közreműködő |
Olvasó |
Keresési szolgáltatás közreműködője |
Keresési index adatszolgáltatója |
Keresési index adatolvasója |
| Azure AI Keresés-szolgáltatások létrehozása és konfigurálása |
✅ |
❌ |
✅ |
❌ |
❌ |
| Hozzáférési szolgáltatás a Azure portálon |
✅ |
✅ |
✅ |
❌ |
❌ |
| Szolgáltatástulajdonságok, metrikák és végpontok megtekintése |
✅ |
✅ |
✅ |
❌ |
❌ |
| A szolgáltatás összes objektumának listázása |
✅ |
✅ |
✅ |
❌ |
❌ |
| Hozzáférési kvóták és szolgáltatásstatisztikák |
✅ |
❌ |
✅ |
❌ |
❌ |
| Kulcsok megtekintése, másolása és újragenerálása |
✅ |
❌ |
✅ |
❌ |
❌ |
| Hitelesítési beállítások megadása |
✅ |
❌ |
✅ |
❌ |
❌ |
| Szerepkörök, szabályzatok és definíciók megtekintése |
✅ |
✅ |
✅ |
❌ |
❌ |
| Hálózati biztonság és privát kapcsolatok konfigurálása |
✅ |
❌ |
✅ |
❌ |
❌ |
| Keresési objektumok létrehozása, futtatása és kezelése 1 |
❌ |
❌ |
✅ |
❌ |
❌ |
| Adatok feltöltése indexeléshez 2 |
❌ |
❌ |
❌ |
✅ |
❌ |
| Index lekérdezése |
❌ |
❌ |
❌ |
✅ |
✅ |
| Lekérés tudásbázisból |
❌ |
❌ |
❌ |
✅ |
✅ |
| Engedélyszűrők megkerülése emelt szintű olvasással (előzetes verzió) |
❌ |
❌ |
❌ |
✅ |
❌ |
1 Ide tartoznak az indexek, indexelők, adatforrások, képességkészletek, aliasok, szinonimák térképei, hibakeresési munkamenetek, tudásbázisok és tudásbázisok. Az indexelők a futtatási és alaphelyzetbe állítási műveleteket is támogatják.
2 A tulajdonos vagy közreműködő futtathatja az Adatok importálása varázslót indexek létrehozásához és betöltéséhez, még akkor is, ha más ügyfeleken nem tudnak dokumentumokat feltölteni. Hasonlóképpen, az indexelők a keresési szolgáltatás bármely indexére írhatnak, függetlenül az indexenkénti szerepkör-hozzárendeléstől. Mindkét esetben a keresőszolgáltatás (nem a felhasználó) hajtja végre az adatsík-műveleteket a Microsoft.Search/searchServices/indexes/documents/* engedélyeivel.
Beépített szerepkörök hozzárendelése
Ebben a szakaszban a következő szerepkörökhöz rendelhet szerepköröket:
Szerepkörök hozzárendelése szolgáltatásfelügyelethez
Az alábbi szerepkörök lehetővé teszik a keresési szolgáltatás létrehozását, konfigurálását és kezelését. Ezek a szerepkörök hierarchikusak, ezért a szükséges hozzáférési szint alapján válasszon egyet.
| Szerepkör |
azonosító |
|
Tulajdonos |
8e3af657-a8ff-443c-a75c-2fe8c4bcb635 |
|
Közreműködő |
b24988ac-6180-42a0-ab88-20f7382ddd24c |
|
Olvasó |
acdd72a7-3385-48ef-bd42-f606fba81ae7 |
Nyissa meg a keresőszolgáltatást a Azure portálon.
A bal oldali panelen válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
Válassza a lehetőséget +>hozzáadása, szerepkör-hozzárendelés.
Válasszon ki egy szerepkört: Tulajdonos, Közreműködő vagy Olvasó.
A Tagok lapon válassza ki a Microsoft Entra felhasználó vagy csoport identitását. Ha egy másik Azure szolgáltatás engedélyeit állítja be, válasszon ki egy rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást.
A szerepkör hozzárendeléséhez a Felülvizsgálat + hozzárendelés lapon válassza a Felülvizsgálat + hozzárendelés lehetőséget.
Jelentkezzen be a Azure-előfizetésbe.
az login
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Adja meg a hozzárendeltet és a hatókört.
az role assignment create \
--assignee <assignee> \
--role "Reader" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:az role assignment create
Importálja a szükséges modult, és csatlakozzon Azure fiókjához.
Import-Module Az.Resources
Connect-AzAccount
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Reader" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:New-AzRoleAssignment
Nyisson meg egy parancshéjat, és jelentkezzen be a Azure-előfizetésbe.
az login
Azure Resource Managerhez való hozzáférési token lekérése.
az account get-access-token --scope https://management.azure.com/.default --query accessToken --output tsv
Küldjön PUT-kérést a keresési szolgáltatás hatókörében érvényes szerepkör-hozzárendelés létrehozásához. Állítsa a(z) principalType értékét User, Group vagy ServicePrincipal értékre, hogy megfeleljen a hozzárendelt személynek.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/acdd72a7-3385-48ef-bd42-f606fba81ae7",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
Szerepkörök hozzárendelése fejlesztéshez
Az alábbi szerepkörök lehetővé teszik keresési objektumok létrehozását, dokumentumok betöltését, lekérdezési indexek létrehozását és tudásbázisokból való lekérését. Rendelje hozzá mindhárom szerepkört a fejlesztési feladatok teljes körének lefedéséhez.
Nyissa meg a keresőszolgáltatást a Azure portálon.
A bal oldali panelen válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
Válassza a lehetőséget +>hozzáadása, szerepkör-hozzárendelés.
Válassza a Keresési szolgáltatás közreműködője lehetőséget.
A Tagok lapon válassza ki a Microsoft Entra felhasználó vagy csoport identitását. Ha egy másik Azure szolgáltatás engedélyeit állítja be, válasszon ki egy rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást.
A szerepkör hozzárendeléséhez a Felülvizsgálat + hozzárendelés lapon válassza a Felülvizsgálat + hozzárendelés lehetőséget.
Ismételje meg ezeket a lépéseket a keresési index adatszolgáltatója és a keresési index adatolvasója hozzárendeléséhez.
Jelentkezzen be a Azure-előfizetésbe.
az login
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Adja meg a hozzárendeltet és a hatókört.
az role assignment create \
--assignee <assignee> \
--role "Search Index Data Contributor" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:az role assignment create
(Nem kötelező) Hozzon létre egy indexre kiterjedő hatókörű szerepkör-hozzárendelést. Adja meg a hozzárendeltet és a hatókört.
az role assignment create \
--assignee <assignee> \
--role "Search Index Data Contributor" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:az role assignment create
Importálja a szükséges modult, és csatlakozzon Azure fiókjához.
Import-Module Az.Resources
Connect-AzAccount
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Search Index Data Contributor" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:New-AzRoleAssignment
(Nem kötelező) Hozzon létre egy indexre kiterjedő hatókörű szerepkör-hozzárendelést. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Search Index Data Contributor" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:New-AzRoleAssignment
Nyisson meg egy parancshéjat, és jelentkezzen be a Azure-előfizetésbe.
az login
Azure Resource Managerhez való hozzáférési token lekérése.
az account get-access-token --scope https://management.azure.com/.default --query accessToken --output tsv
Küldjön PUT-kérést a keresési szolgáltatás hatókörében érvényes szerepkör-hozzárendelés létrehozásához. Állítsa a(z) principalType értékét User, Group vagy ServicePrincipal értékre, hogy megfeleljen a hozzárendelt személynek.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/8ebe5a00-799e-43f5-93ac-243d3dce84a7",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
(Opcionális) Küldjön PUT-kérést egy index hatókörére vonatkozó szerepkör-hozzárendelés létrehozásához.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/8ebe5a00-799e-43f5-93ac-243d3dce84a7",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
Szerepkörök hozzárendelése csak olvasási hozzáféréshez
Használja az alábbi szerepkört olyan alkalmazásokhoz és folyamatokhoz, amelyekhez csak olvasási hozzáférésre van szükség az indexekhez és a tudásbázisokhoz. A támogatott műveletek közé tartozik a keresés, a keresés, az automatikus kiegészítés és az indexekre vonatkozó javaslatok , valamint a tudásbázisok lekérése .
Nyissa meg a keresőszolgáltatást a Azure portálon.
A bal oldali panelen válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
Válassza a lehetőséget +>hozzáadása, szerepkör-hozzárendelés.
Válassza ki a Keresési index adatolvasó szerepkört.
A Tagok lapon válassza ki a Microsoft Entra felhasználó vagy csoport identitását. Ha egy másik Azure szolgáltatás engedélyeit állítja be, válasszon ki egy rendszer által hozzárendelt vagy felhasználó által hozzárendelt felügyelt identitást.
A szerepkör hozzárendeléséhez a Felülvizsgálat + hozzárendelés lapon válassza a Felülvizsgálat + hozzárendelés lehetőséget.
Jelentkezzen be a Azure-előfizetésbe.
az login
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Adja meg a hozzárendeltet és a hatókört.
az role assignment create \
--assignee <assignee> \
--role "Search Index Data Reader" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:az role assignment create
(Nem kötelező) Hozzon létre egy indexre kiterjedő hatókörű szerepkör-hozzárendelést. Adja meg a hozzárendeltet és a hatókört.
az role assignment create \
--assignee <assignee> \
--role "Search Index Data Reader" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:az role assignment create
Importálja a szükséges modult, és csatlakozzon Azure fiókjához.
Import-Module Az.Resources
Connect-AzAccount
Hozzon létre egy szerepkör-hozzárendelési hatókört a keresési szolgáltatáshoz. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Search Index Data Reader" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>"
Hivatkozás:New-AzRoleAssignment
(Nem kötelező) Hozzon létre egy indexre kiterjedő hatókörű szerepkör-hozzárendelést. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Search Index Data Reader" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:New-AzRoleAssignment
Nyisson meg egy parancshéjat, és jelentkezzen be a Azure-előfizetésbe.
az login
Azure Resource Managerhez való hozzáférési token lekérése.
az account get-access-token --scope https://management.azure.com/.default --query accessToken --output tsv
Küldjön PUT-kérést a keresési szolgáltatás hatókörében érvényes szerepkör-hozzárendelés létrehozásához. Állítsa a(z) principalType értékét User, Group vagy ServicePrincipal értékre, hogy megfeleljen a hozzárendelt személynek.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/1407120a-92aa-4202-b7e9-c0e197c71c8f",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
(Opcionális) Küldjön PUT-kérést egy index hatókörére vonatkozó szerepkör-hozzárendelés létrehozásához.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/1407120a-92aa-4202-b7e9-c0e197c71c8f",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
Szerepkör-hozzárendelések tesztelése
Ügyfél használatával tesztelje a szerepkör-hozzárendeléseket. Ne feledje, hogy a szerepkörök kumulatívak. Nem törölheti vagy tagadhatja meg azokat az örökölt szerepköröket, amelyek hatóköre az előfizetés vagy az erőforráscsoport szintjén van az erőforrás (keresési szolgáltatás) szintjén.
A folytatás előtt konfigurálja az alkalmazást kulcs nélküli kapcsolatokhoz , és rendelkezzen szerepkör-hozzárendelésekkel.
Nyissa meg a keresőszolgáltatást a Azure portálon.
A bal oldali panelen válassza a Keresési felügyeleti>indexek lehetőséget az indexhez kapcsolódó engedélyek teszteléséhez:
A keresési szolgáltatás közreműködői létrehozhatnak, módosíthatnak és törölhetnek keresési objektumokat, de nem tölthetnek be dokumentumokat, és nem futtathatnak lekérdezéseket. Az engedélyek ellenőrzéséhez hozzon létre egy keresési indexet.
A keresési index adatszolgáltatói betölthetik a dokumentumokat. A Import data varázslón kívül nincs dokumentumbetöltési lehetőség a Azure portálon, de a dokumentumbetöltési engedélyek megerősítéséhez reset és indexelőt futtathat.
A keresési index adatolvasói lekérdezhetik az indexeket. Az engedélyek ellenőrzéséhez használja a Kereséskezelőt. Lekérdezéseket küldhet és megtekintheti az eredményeket, de nem tekintheti meg az indexdefiníciókat, és nem hozhat létre indexeket.
Ez a megközelítés feltételezi, hogy a Visual Studio Code-ot a REST Client kiterjesztéssel használják.
Nyisson meg egy "Azure CLI" parancshéjat, és jelentkezzen be az Azure-előfizetésbe.
az login
Szerezze be a hozzáférési jogkivonatot a Azure AI Keresés adatsíkhoz.
az account get-access-token --scope https://search.azure.com/.default --query accessToken --output tsv
Illessze be ezeket a változókat egy új szövegfájlt készítve a Visual Studio Code-ban.
@baseUrl = PASTE-YOUR-SEARCH-SERVICE-URL-HERE
@index-name = PASTE-YOUR-INDEX-NAME-HERE
@token = PASTE-YOUR-TOKEN-HERE
Küldjön egy kérést, amely a megadott változókat használja. A Keresési index adatolvasó szerepkörhöz bármilyen támogatott API-verzióval küldhet lekérdezést.
POST https://{{baseUrl}}/indexes/{{index-name}}/docs/search?api-version=2026-04-01 HTTP/1.1
Content-type: application/json
Authorization: Bearer {{token}}
{
"queryType": "simple",
"search": "motel",
"filter": "",
"select": "HotelName,Description,Category,Tags",
"count": true
}
Hivatkozás:Dokumentumok keresése
A sikeres lekérdezés a keresési eredményeket egyező dokumentumokkal adja vissza. Ha az index üres, vagy nincs egyezése, value üres tömböt tartalmaz.
Telepítse a szükséges csomagokat.
dotnet add package Azure.Search.Documents
dotnet add package Azure.Identity
Használja Azure.Identity a .NET token hitelesítéshez. Microsoft a legtöbb forgatókönyv esetében DefaultAzureCredential() javasolja.
Íme egy példa egy ügyfélkapcsolat létrehozására DefaultAzureCredential() használatával.
// Create a SearchIndexClient to send create/delete index commands
// Requires Search Service Contributor role
SearchIndexClient adminClient = new SearchIndexClient(serviceEndpoint, new DefaultAzureCredential());
// Create a SearchClient to load and query documents
// Requires Search Index Data Contributor (load) or Search Index Data Reader (query)
SearchClient srchclient = new SearchClient(serviceEndpoint, indexName, new DefaultAzureCredential());
Referencia:SearchClient, SearchIndexClient, DefaultAzureCredential
Íme egy másik példa az ügyfél titkos hitelesítő adatainak használatára.
var tokenCredential = new ClientSecretCredential(aadTenantId, aadClientId, aadSecret);
SearchClient srchclient = new SearchClient(serviceEndpoint, indexName, tokenCredential);
Íme egy példa egy lekérdezés futtatására.
SearchResults<SearchDocument> response = srchclient.Search<SearchDocument>("motel");
foreach (SearchResult<SearchDocument> result in response.GetResults())
{
Console.WriteLine(result.Document["HotelName"]);
}
A sikeres lekérdezés keresési eredményeket ad vissza. Ha nem egyeznek a dokumentumok, az eredménygyűjtemény üres.
Telepítse a szükséges csomagokat.
pip install azure-search-documents azure-identity
Használja Azure.Identity for Python token hitelesítéshez.
A DefaultAzureCredential akkor használja, ha a Python-ügyfél kiszolgálóoldali műveletet végrehajtó alkalmazás. Engedélyezze az interaktív hitelesítést , ha az alkalmazás böngészőben fut.
Íme egy példa.
from azure.search.documents import SearchClient
from azure.identity import DefaultAzureCredential
credential = DefaultAzureCredential()
endpoint = "https://<mysearch>.search.windows.net"
index_name = "myindex"
client = SearchClient(endpoint=endpoint, index_name=index_name, credential=credential)
Referencia:SearchClient, DefaultAzureCredential
Adja hozzá a szükséges függőségeket a(z) pom.xml elemhez.
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-search-documents</artifactId>
<version>11.7.4</version>
</dependency>
<dependency>
<groupId>com.azure</groupId>
<artifactId>azure-identity</artifactId>
<version>1.15.0</version>
</dependency>
Használja a Azure.Identity for Java a token-hitelesítéshez.
DefaultAzureCredential használata Azure futó alkalmazásokhoz.
Hozzáférés biztosítása egyetlen indexhez
Bizonyos esetekben érdemes lehet korlátozni egy alkalmazás hozzáférését egyetlen erőforráshoz, például egy indexhez.
A Azure portál jelenleg nem támogatja a szerepkör-hozzárendeléseket az index szintjén. A Azure CLI, a PowerShell vagy a REST API használatával hozzárendelhet szerepköröket egyetlen indexhez.
Jelentkezzen be a Azure-előfizetésbe.
az login
Egyetlen indexre hatókörrel rendelkező szerepkör-hozzárendelés létrehozása. Adja meg a hozzárendelt és az indexszintű hatókört.
az role assignment create \
--assignee <assignee> \
--role "Search Index Data Contributor" \
--scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:az role assignment create
Importálja a szükséges modult, és csatlakozzon Azure fiókjához.
Import-Module Az.Resources
Connect-AzAccount
Egyetlen indexre hatókörrel rendelkező szerepkör-hozzárendelés létrehozása. Ez a példa egy felhasználói bejelentkezési nevet használ.
New-AzRoleAssignment -SignInName <email> `
-RoleDefinitionName "Search Index Data Contributor" `
-Scope "/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>"
Hivatkozás:New-AzRoleAssignment
Nyisson meg egy parancshéjat, és jelentkezzen be a Azure-előfizetésbe.
az login
Azure Resource Managerhez való hozzáférési token lekérése.
az account get-access-token --scope https://management.azure.com/.default --query accessToken --output tsv
PUT-kérés küldése egyetlen indexre hatókörű szerepkör-hozzárendelés létrehozásához. Állítsa a(z) principalType értékét User, Group vagy ServicePrincipal értékre, hogy megfeleljen a hozzárendelt személynek.
PUT https://management.azure.com/subscriptions/<subscription>/resourceGroups/<resource-group>/providers/Microsoft.Search/searchServices/<search-service>/indexes/<index-name>/providers/Microsoft.Authorization/roleAssignments/<role-assignment-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleDefinitionId": "/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/8ebe5a00-799e-43f5-93ac-243d3dce84a7",
"principalId": "<principal-object-id>",
"principalType": "<principal-type>"
}
}
Hivatkozás:Szerepkör-hozzárendelések – Létrehozás
Indexenkénti hatókör- és indexelőműveletek
Az indexenkénti szerepkör-hozzárendelések csak a közvetlen API-műveletekre vonatkoznak, például a felhasználóktól vagy alkalmazásoktól érkező lekérdezésekre vagy dokumentumok feltöltésére. Az indexelőket nem korlátozzák indexenkénti engedélyek, mert szolgáltatásszintű hitelesítő adatokkal működnek.
A keresési szolgáltatás közreműködői szerepkörrel rendelkező felhasználók olyan indexelőket hozhatnak létre, amelyek a keresési szolgáltatás bármely indexére írnak, még olyan indexeket is, ahol a felhasználó nem rendelkezik indexenkénti szerepkör-hozzárendeléssel.
Az indexek közötti szigorú adatelkülönítéshez vegye figyelembe az alábbi megközelítéseket:
- Használjon külön keresési szolgáltatásokat az indexszintű elkülönítést igénylő csapatokhoz vagy felhasználókhoz.
-
A keresési szolgáltatás közreműködője csak az indexelőket kezelő rendszergazdákhoz rendelhető hozzá.
- A dokumentumszintű hozzáférés-vezérlés biztonsági szűrőkkel történő használatával korlátozhatja a lekérdezési eredményeket egy megosztott indexen belül.
Egyéni szerepkör létrehozása
Ha a beépített szerepkörök nem biztosítják az engedélyek megfelelő kombinációját, létrehozhat egy egyéni szerepkört a szükséges műveletek támogatásához.
Az alábbi példák klónozzák a keresési index adatolvasót , majd hozzáadják az indexek név szerinti listázásának lehetőségét. A keresési szolgáltatás indexeinek felsorolása általában rendszergazdai jognak minősül.
Jelentkezzen be a Azure portálra és keresse meg a keresési szolgáltatást.
A bal oldali panelen válassza a Hozzáférés-vezérlés (IAM) lehetőséget.
A Szerepkörök lapon keresse meg a Keresési index adatolvasó vagy egy másik szerepkört, válassza a három pontot (...), majd válassza a Klónozás lehetőséget.
A Basics lapon adja meg az egyéni szerepkör nevét( például "Keresési index Data Explorer"), majd válassza a Next lehetőséget.
Az Engedélyek lapon válassza az Engedélyek hozzáadása lehetőséget.
Az Címek panelen válassza a Microsoft Keresés csempét.
Ha a műveletek felül ki van jelölve, állítsa be a következő engedélyeket:
- A
Microsoft.Search/operations területen válassza a Read: List all available operations lehetőséget.
- A
Microsoft.Search/searchServices/indexes területen válassza a Read : Index olvasása lehetőséget.
Kapcsoljon a Adatműveletek lapra a tetején, majd a Microsoft.Search/searchServices/indexes/documents területen válassza az Olvasás: Dokumentumok olvasása lehetőséget.
A JSON-definíció a következő példához hasonlóan néz ki:
{
"properties": {
"roleName": "Search Index Data Explorer",
"description": "List all indexes on the service and query them.",
"assignableScopes": [
"/subscriptions/<subscription>/resourceGroups/<resource-group>"
],
"permissions": [
{
"actions": [
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read"
],
"notActions": [],
"dataActions": [
"Microsoft.Search/searchServices/indexes/documents/read"
],
"notDataActions": []
}
]
}
}
Kattintson a Hozzáadás gombra a panel bezárásához.
Válassza a Véleményezés + létrehozás lehetőséget a szerepkör létrehozásához.
Mostantól hozzárendelhet felhasználókat és csoportokat a szerepkörhöz. A lépésekről további információt a A Azure egyéni szerepkörök létrehozása vagy frissítése a Azure portálon.
A Azure CLI példa a keresési index adatolvasójának klónozott egyéni szerepkörének JSON-szintaxisát mutatja be, de az összes index név szerinti listázásának lehetőségével. Az egyéni szerepkörök létrehozásával kapcsolatos részletes útmutatásért lásd: Azure egyéni szerepkörök létrehozása vagy frissítése Azure CLI használatával.
Tekintse át az atomi engedélyek listáját, és állapítsa meg, hogy mely engedélyekre van szüksége. Ebben a példában a következő engedélyekre van szüksége:
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read",
"Microsoft.Search/searchServices/indexes/documents/read"
Mentse a következő szerepkördefiníciót egy JSON-fájlba.search-index-data-explorer.json A(z) Id számára adjon meg egy új GUID-ot, amelyet Ön generál.
{
"Name": "Search Index Data Explorer",
"Id": "<role-definition-guid>",
"IsCustom": true,
"Description": "List all indexes on the service and query them.",
"Actions": [
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read"
],
"NotActions": [],
"DataActions": [
"Microsoft.Search/searchServices/indexes/documents/read"
],
"NotDataActions": [],
"AssignableScopes": [
"/subscriptions/<subscription>/resourceGroups/<resource-group>"
]
}
Hozza létre az egyéni szerepkört úgy, hogy a JSON-fájlt átadja a(z) az role definition create számára.
az role definition create --role-definition @search-index-data-explorer.json
Hivatkozás:az role definition create
A PowerShell-példa a keresési index adatolvasójának klónozott egyéni szerepkörének JSON-szintaxisát mutatja be, de az összes indexet név szerint listázhatja. Az egyéni szerepkörök létrehozásával kapcsolatos részletes útmutatásért lásd: Azure egyéni szerepkörök létrehozása vagy frissítése Azure PowerShell használatával.
Tekintse át az atomi engedélyek listáját, és állapítsa meg, hogy mely engedélyekre van szüksége. Ebben a példában a következő engedélyekre van szüksége:
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read",
"Microsoft.Search/searchServices/indexes/documents/read"
Mentse a következő szerepkördefiníciót egy JSON-fájlba.search-index-data-explorer.json A(z) Id számára adjon meg egy új GUID-ot, amelyet Ön generál.
{
"Name": "Search Index Data Explorer",
"Id": "<role-definition-guid>",
"IsCustom": true,
"Description": "List all indexes on the service and query them.",
"Actions": [
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read"
],
"NotActions": [],
"DataActions": [
"Microsoft.Search/searchServices/indexes/documents/read"
],
"NotDataActions": [],
"AssignableScopes": [
"/subscriptions/<subscription>/resourceGroups/<resource-group>"
]
}
Hozza létre az egyéni szerepkört úgy, hogy a JSON-fájlt átadja a(z) New-AzRoleDefinition számára.
New-AzRoleDefinition -InputFile "search-index-data-explorer.json"
Referencia:New-AzRoleDefinition
A REST API-példa a keresési index adatolvasójának klónozott egyéni szerepkörének JSON-szintaxisát mutatja be, de az összes indexet név szerint listázhatja. Az egyéni szerepkörök létrehozásával kapcsolatos részletes útmutatásért lásd: Azure egyéni szerepkörök létrehozása vagy frissítése a REST API használatával.
Tekintse át az atomi engedélyek listáját, és állapítsa meg, hogy mely engedélyekre van szüksége. Ebben a példában a következő engedélyekre van szüksége:
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read",
"Microsoft.Search/searchServices/indexes/documents/read"
Az egyéni szerepkör létrehozásához küldje el a következő kérést a szerepkördefiníció végpontjának.
PUT https://management.azure.com/subscriptions/<subscription>/providers/Microsoft.Authorization/roleDefinitions/<role-definition-guid>?api-version=2022-04-01 HTTP/1.1
Authorization: Bearer <access-token>
Content-Type: application/json
{
"properties": {
"roleName": "Search Index Data Explorer",
"description": "List all indexes on the service and query them.",
"type": "CustomRole",
"permissions": [
{
"actions": [
"Microsoft.Search/operations/read",
"Microsoft.Search/searchServices/indexes/read"
],
"notActions": [],
"dataActions": [
"Microsoft.Search/searchServices/indexes/documents/read"
],
"notDataActions": []
}
],
"assignableScopes": [
"/subscriptions/<subscription>/resourceGroups/<resource-group>"
]
}
}
Referencia:Szerepkör-definíciók – Létrehozás vagy frissítés
Feltételes hozzáférési szabályzat létrehozása
Ha vállalati szabályzatokat, például többtényezős hitelesítést szeretne kikényszeríteni, használja a Microsoft Entra Feltételes hozzáférés.
Feltételes hozzáférési irányelv létrehozása az Azure AI Keresés-hez:
Jelentkezzen be a Azure portálra.
Keresse meg a Microsoft Entra Feltételes hozzáférés.
Az Áttekintés lapon válassza az Új szabályzat létrehozása lehetőséget.
A Cloud-alkalmazások vagy -műveletek területen adja hozzá Azure AI Keresés felhőalkalmazásként, attól függően, hogy hogyan szeretné beállítani a szabályzatot.
Frissítse a szabályzat fennmaradó paramétereit. Megadhatja például, hogy a szabályzat mely felhasználókra és csoportokra vonatkozik.
Mentse a szabályzatot.
Fontos
Ha a keresési szolgáltatáshoz hozzárendelt egy felügyelt identitást, az adott keresési szolgáltatás felhőalkalmazásként jelenik meg. Az adott keresési szolgáltatás kiválasztása azonban nem kényszeríti ki a szabályzatot. Ehelyett válassza ki az általános Azure AI Keresés felhőalkalmazást a feltételes hozzáférési szabályzatok keresési szolgáltatásra való alkalmazásához.
Hibaelhárítás
Amikor olyan alkalmazásokat fejleszt, amelyek szerepköralapú hozzáférés-vezérlést használnak a hitelesítéshez, gyakori problémák léphetnek fel:
A keresési szolgáltatás alapértelmezett konfigurációja a kulcsalapú hitelesítés. Ha nem módosítja ezt a beállítást mindkettőre vagy szerepköralapú hozzáférés-vezérlésre, a rendszer a mögöttes engedélyektől függetlenül automatikusan elutasítja a szerepköralapú hitelesítést használó összes kérést.
Ha a kérés tartalmaz egy API-kulcsot a szerepköralapú hitelesítő adatok mellett, a szolgáltatás a kulccsal hitelesít. Távolítsa el az API-kulcsot a kérésfejlécekből a szerepköralapú hitelesítés használatához.
Ha az engedélyezési jogkivonat egy felügyelt identitásból származik, és nemrég rendelte hozzá a megfelelő engedélyeket, az engedély-hozzárendelések érvénybe lépése több órát is igénybe vehet .
Ha a dokumentumszintű engedélyekkel rendelkező lekérdezések nem adják vissza a várt eredményeket, használja a Keresési index adatszolgáltatóját, vagy hozzon létre egy egyéni szerepkörtemelt szintű engedélyekkel (előzetes verzió) a vizsgálathoz.
Következő lépés
Ez a cikk bemutatja, hogyan rendelhet szerepköröket a vezérlő- és adatsík-műveletekhez Azure AI Keresés. A szerepköralapú hozzáférés alkalmazáskódhoz való hozzáadására vonatkozó átfogó útmutatásért: