Ansluta till Azure AI-sökning med hjälp av roller

Kommentar

Azure AI-sökning är tillgängligt via Azure-portalen, REST-API:er och Azure-SDK:er. Den ligger också till grund för Foundry IQ, det hanterade kunskapsskiktet som omvandlar företagsinnehåll till återanvändbara, behörighetsmedvetna kunskapsbaser för agenter i Microsoft Foundry-portalen.

Azure AI-sökning stöder role-baserad åtkomstkontroll via Microsoft Entra ID. Rollbaserad åtkomst är valfri men rekommenderas. Alternativet är nyckelbaserad autentisering, vilket är standardinställningen.

Om du tilldelar flera roller till ett säkerhetsobjekt kombineras behörigheterna. Rolltilldelningar gäller för alla verktyg och klientbibliotek.

Den här artikeln beskriver hur du tilldelar inbyggda roller för tjänstadministration, utveckling och skrivskyddad fråge- och hämtningsåtkomst. Den innehåller också steg för att skapa anpassade roller och testa rolltilldelningar.

Tips/Råd

Förutsättningar

Inbyggda roller

Roller är en samling behörigheter som påverkar kontrollplanet eller dataplanet:

  • Kontrollplan: Åtgärder för etablering av tjänster, konfiguration och administration. Kontrollplansåtgärder omfattar att skapa eller ta bort söktjänster, lista API-nycklar och hantera nätverks- och autentiseringsinställningar. Tillgänglig via REST-API:erna Azure Resource Manager, Search Management REST API:er och motsvarande Azure SDKs klientbibliotek.

  • Dataplan: Åtgärder mot söktjänstens slutpunkt. Dataplansåtgärder delas in i två kategorier: objekthantering och innehållsåtkomst. Tillgänglig via rest-API:erna för Search Service och motsvarande Azure SDKs klient-bibliotek.

Rollbeskrivningar

Följande inbyggda roller beviljar behörigheter till Azure AI-sökning. Kontrollplansroller är alltid tillgängliga, medan dataplansroller kräver att rollbaserad åtkomst är aktiverad på din söktjänst. Du kan kombinera inbyggda roller för bredare åtkomst eller skapa en anpassad roll med de specifika behörigheter du behöver.

Roll Flygplan beskrivning
Ägare Control
  • Fullständig åtkomst till kontrollplanet, inklusive möjligheten att tilldela roller och ändra autentiseringsinställningarna.
  • Prenumerationsadministratörer har den här rollen som standard.
  • Kan hantera API-nycklar.
  • Det går inte att skapa sökobjekt, läsa in dokument, frågeindex eller hämta från kunskapsbaser.
Deltagare Control
  • Samma nivå av kontrollplansåtkomst som Ägare, minus möjligheten att tilldela roller.
Läsare Control
  • Skrivskyddad kontrollplansåtkomst.
  • Kan visa tjänstmått och objektdefinitioner.
  • Det går inte att visa eller hantera API-nycklar, läsa in dokument, fråga index eller hämta från kunskapsbaser.
Söktjänstdeltagare Kontroll & data
  • Fullständig åtkomst till kontrollplanet. Dataplansåtkomst är begränsad till objekthantering.
  • Kan skapa index, indexerare, kompetensuppsättningar, kunskapsbaser och andra sökobjekt.
  • Kan hämta administratörs- och fråge-API-nycklar via kontrollplansåtgärder.
  • Det går inte att läsa in dokument, frågeindex eller hämta från kunskapsbaser direkt via rollbaserad åtkomst.
  • Fullständig behörighetslista finns i Microsoft.Search/searchServices/*.
Sökindexdatabidragare Uppgifter
  • Läs- och skrivåtkomst till innehåll.
  • Kan läsa in dokument, frågeindex och hämta från kunskapsbaser.
  • Det går inte att ändra objektdefinitioner eller hämta administratörsnycklar.
Dataläsare för sökindex Uppgifter
  • Skrivskyddad innehållsåtkomst.
  • Kan köra frågor mot index och hämta från kunskapsbaser.
  • Det går inte att läsa in dokument, ändra objektdefinitioner eller hämta administratörsnycklar.

Viktigt!

  • Ägare, deltagare och söktjänstdeltagare kan hämta administratörsnycklar som ger fullständig läs-skrivåtkomst till dataplanet. Bevilja endast dessa roller till betrodda användare.
  • Som standard gäller dataplansroller för alla index i söktjänsten. För att begränsa databidragsgivare eller dataläsare för sökindex till ett enda index, se Bevilja åtkomst till ett enda index.

Sammanfattning av behörigheter

Använd följande tabell för att snabbt hitta vilken roll som ger de behörigheter du behöver.

Behörigheter Ägare/bidragsgivare Läsare Söktjänstdeltagare Sökindexdatabidragare Dataläsare för sökindex
Skapa och konfigurera Azure AI-sökning tjänster ✅ ❌ ✅ ❌ ❌
Åtkomsttjänst i Azure-portalen ✅ ✅ ✅ ❌ ❌
Visa tjänstegenskaper, mått och slutpunkt ✅ ✅ ✅ ❌ ❌
Visa en lista över alla objekt i tjänsten ✅ ✅ ✅ ❌ ❌
Åtkomstkvoter och tjänststatistik ✅ ❌ ✅ ❌ ❌
Visa, kopiera och återskapa nycklar ✅ ❌ ✅ ❌ ❌
Ange autentiseringsalternativ ✅ ❌ ✅ ❌ ❌
Visa roller, principer och definitioner ✅ ✅ ✅ ❌ ❌
Konfigurera nätverkssäkerhet och privata anslutningar ✅ ❌ ✅ ❌ ❌
Skapa, köra och hantera sökobjekt 1 ❌ ❌ ✅ ❌ ❌
Ladda upp data för indexering 2 ❌ ❌ ❌ ✅ ❌
Sök i ett index ❌ ❌ ❌ ✅ ✅
Hämta från en kunskapsbas ❌ ❌ ❌ ✅ ✅
Förbigå behörighetsfilter med utökad läsåtkomst (förhandsversion) ❌ ❌ ❌ ✅ ❌

1 Innehåller index, indexerare, datakällor, kompetensuppsättningar, alias, synonymkartor, felsökningssessioner, kunskapsbaser och kunskapskällor. Indexers stöder även kör- och återställningsoperationer.

2 En ägare eller deltagare kan köra guiden Importera data för att skapa och läsa in index, även om de inte kan ladda upp dokument i andra klienter. På samma sätt kan indexerare skriva till valfritt index i söktjänsten, oavsett rolltilldelningar per index. I båda fallen utför söktjänsten (inte användaren) dataplansåtgärderna med hjälp av dess Microsoft.Search/searchServices/indexes/documents/* behörigheter.

Tilldela inbyggda roller

I det här avsnittet tilldelar du roller för:

Tilldela roller för tjänstadministration

Med följande roller kan du skapa, konfigurera och hantera en söktjänst. Dessa roller är hierarkiska, så välj en baserat på den åtkomstnivå du behöver.

Roll ID-nummer
Ägare 8e3af657-a8ff-443c-a75c-2fe8c4bcb635
Deltagare b24988ac-6180-42a0-ab88-20f7382dd24c
Läsare acdd72a7-3385-48ef-bd42-f606fba81ae7
  1. Gå till söktjänsten i Azure-portalen.

  2. Välj Åtkomstkontroll (IAM) i den vänstra rutan.

  3. Välj + Lägg till>Lägg till rolltilldelning.

    Skärmbild av sidan Åtkomstkontroll (IAM) för att tilldela tjänstadministrationsroller.

  4. Välj en roll: Ägare, Deltagare eller Läsare.

  5. På fliken Members väljer du Microsoft Entra användar- eller gruppidentitet. Om du konfigurerar behörigheter för en annan Azure tjänst väljer du en systemtilldelad eller användartilldelad hanterad identitet.

  6. På fliken Granska + tilldela väljer du Granska + tilldela för att tilldela rollen.

Tilldela roller för utveckling

Med följande roller kan du skapa sökobjekt, läsa in dokument, frågeindex och hämta från kunskapsbaser. Tilldela alla tre rollerna för att täcka alla utvecklingsaktiviteter.

Roll ID-nummer
Söktjänstdeltagare 7ca78c08-252a-4471-8644-bb5ff32d4ba0
Sökindexdatabidragare 8ebe5a00-799e-43f5-93ac-243d3dce84a7
Dataläsare för sökindex 1407120a-92aa-4202-b7e9-c0e197c71c8f
  1. Gå till söktjänsten i Azure-portalen.

  2. Välj Åtkomstkontroll (IAM) i den vänstra rutan.

  3. Välj + Lägg till>Lägg till rolltilldelning.

    Skärmbild av sidan Åtkomstkontroll (IAM) för att tilldela utvecklingsroller.

  4. Välj Söktjänstdeltagare.

  5. På fliken Members väljer du Microsoft Entra användar- eller gruppidentitet. Om du konfigurerar behörigheter för en annan Azure tjänst väljer du en systemtilldelad eller användartilldelad hanterad identitet.

  6. På fliken Granska + tilldela väljer du Granska + tilldela för att tilldela rollen.

  7. Upprepa de här stegen för att tilldela Search Index Data Contributor och Search Index Data Reader.

Tilldela roller för skrivskyddad åtkomst

Använd följande roll för appar och processer som bara behöver läsåtkomst till index och kunskapsbaser. Åtgärder som stöds omfattar sökning, sökning, automatisk komplettering och förslag på index och hämtning för kunskapsbaser.

Roll ID-nummer
Dataläsare för sökindex 1407120a-92aa-4202-b7e9-c0e197c71c8f
  1. Gå till söktjänsten i Azure-portalen.

  2. Välj Åtkomstkontroll (IAM) i den vänstra rutan.

  3. Välj + Lägg till>Lägg till rolltilldelning.

    Skärmbild av sidan Åtkomstkontroll (IAM) för att tilldela skrivskyddade dataåtkomstroller.

  4. Välj rollen Dataläsare för sökindex .

  5. På fliken Members väljer du Microsoft Entra användar- eller gruppidentitet. Om du konfigurerar behörigheter för en annan Azure tjänst väljer du en systemtilldelad eller användartilldelad hanterad identitet.

  6. På fliken Granska + tilldela väljer du Granska + tilldela för att tilldela rollen.

Testa rolltilldelningar

Använd en klient för att testa rolltilldelningar. Kom ihåg att rollerna är kumulativa. Du kan inte ta bort eller neka ärvda roller som är begränsade till prenumerations- eller resursgruppsnivå på resursnivå (söktjänst).

Innan du fortsätter konfigurerar du programmet för nyckellösa anslutningar och har rolltilldelningar på plats.

  1. Gå till söktjänsten i Azure-portalen.

  2. I den vänstra rutan väljer du Sökhanteringsindex> för att testa indexrelaterade behörigheter:

    • Search Service-deltagare kan skapa, ändra och ta bort sökobjekt men kan inte läsa in dokument eller köra frågor. Om du vill verifiera behörigheter skapar du ett sökindex.

    • Search Index Data Contributors kan ladda upp dokument. Det finns inget alternativ för att läsa in dokument i Azure-portalen utanför guiden Importera data, men du kan reset och köra en indexerare för att bekräfta behörigheter för dokumentinläsning.

    • Search Index Data Readers kan göra förfrågningar av index. Om du vill verifiera behörigheter använder du Sökutforskaren. Du bör kunna skicka frågor och visa resultat, men du bör inte kunna visa indexdefinitioner eller skapa index.

Bevilja åtkomst till ett enda index

I vissa scenarier kanske du vill begränsa ett programs åtkomst till en enskild resurs, till exempel ett index.

För närvarande stöder Azure-portalen inte rolltilldelningar på indexnivå. Använd Azure CLI, PowerShell eller REST API för att tilldela roller som är begränsade till ett enda index.

Omfångs- och indexeringsåtgärder per index

Rolltilldelningar per index gäller endast för direkta API-åtgärder, till exempel frågor eller dokumentuppladdningar från användare eller program. Indexerare begränsas inte av behörigheter per index eftersom de fungerar med autentiseringsuppgifter på tjänstnivå.

En användare med rollen Search Service-deltagare kan skapa indexerare som skriver till valfritt index i söktjänsten, även index där användaren inte har någon rolltilldelning per index.

För strikt dataisolering mellan index bör du överväga följande metoder:

  • Använd separata söktjänster för team eller användare som behöver isolering på indexnivå.
  • Tilldela endast söktjänstdeltagare till administratörer som hanterar indexerare.
  • Använd åtkomstkontroll på dokumentnivå med säkerhetsfilter för att begränsa frågeresultat i ett delat index.

Skapa en anpassad roll

Om inbyggda roller inte ger rätt kombination av behörigheter kan du skapa en anpassad roll för att stödja de åtgärder du behöver.

I följande exempel klonas Search Index Data Reader och sedan kan du lista index efter namn. Normalt betraktas en lista över index i en söktjänst som en administrativ rättighet.

  1. Logga in på Azure-portalen och gå till söktjänsten.

  2. Välj Åtkomstkontroll (IAM) i den vänstra rutan.

  3. På fliken Roller letar du reda på Sök indexdataläsare eller en annan roll, väljer ellipsen (...) och väljer sedan Klona.

  4. På fliken Basics anger du ett namn för den anpassade rollen, till exempel "Sökindex Data Explorer" och väljer sedan Nästa.

  5. På fliken Behörigheter väljer du Lägg till behörigheter.

  6. I fönstret Lägg till behörigheter väljer du panelen Microsoft Search.

  7. Med Åtgärder markerade överst anger du följande behörigheter:

    • Under Microsoft.Search/operations väljer du Läs: Lista alla tillgängliga åtgärder.
    • Under Microsoft.Search/searchServices/indexes väljer du Läs: Läs index.
  8. Växla till Data actions längst upp, och under Microsoft.Search/searchServices/indexes/documents väljer du Läs : Läs dokument.

    JSON-definitionen ser ut som i följande exempel:

    {
        "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": []
                }
            ]
        }
    }
    
  9. Välj Lägg till för att stänga fönstret.

  10. Välj Granska + skapa för att skapa rollen.

    Nu kan du tilldela användare och grupper till rollen. Mer information om de här stegen finns i Skapa eller uppdatera Azure anpassade roller med hjälp av Azure-portalen.

Skapa en princip för villkorsstyrd åtkomst

Om du behöver framtvinga organisationsprinciper, till exempel multifaktorautentisering, använder du Villkorsstyrd åtkomst i Microsoft Entra.

Så här skapar du en princip för villkorlig åtkomst för Azure AI-sökning:

  1. Logga in på Azure-portalen.

  2. Sök efter Villkorsstyrd åtkomst i Microsoft Entra.

  3. På sidan Översikt väljer du Skapa ny princip.

  4. Under Molnappar eller åtgärder lägger du till Azure AI-sökning som en molnapp, beroende på hur du vill konfigurera din princip.

  5. Uppdatera de återstående parametrarna för din policy. Ange till exempel vilka användare och grupper som principen gäller för.

  6. Spara principen.

Viktigt!

Om söktjänsten har tilldelats en hanterad identitet visas den specifika söktjänsten som en molnapp. Men att välja den specifika söktjänsten framtvingar inte principen. Välj i stället den allmänna Azure AI-sökning molnappen för att tillämpa principer för villkorsstyrd åtkomst i söktjänsten.

Felsökning

När du utvecklar program som använder rollbaserad åtkomstkontroll för autentisering kan det uppstå några vanliga problem:

  • Standardkonfigurationen för en söktjänst är nyckelbaserad autentisering. Om du inte ändrar den här inställningen till Både eller Rollbaserad åtkomstkontroll nekas alla begäranden som använder rollbaserad autentisering automatiskt, oavsett underliggande behörigheter.

  • Om din begäran innehåller en API-nyckel tillsammans med rollbaserade autentiseringsuppgifter autentiseras tjänsten med hjälp av nyckeln. Ta bort API-nyckeln från dina begärandehuvuden för att använda rollbaserad autentisering.

  • Om auktoriseringstoken kommer från en hanterad identitet och du nyligen har tilldelat lämpliga behörigheter kan det ta flera timmar innan behörighetstilldelningarna börjar gälla.

  • Om frågor med behörigheter på dokumentnivå inte returnerar förväntade resultat använder du Search Index Data Contributor eller skapar en anpassad roll med utökade behörigheter (förhandsversion) för att undersöka.

Nästa steg

Den här artikeln beskriver hur du tilldelar roller för kontroll- och dataplansåtgärder på Azure AI-sökning. Omfattande instruktioner om hur du lägger till rollbaserad åtkomst till programkoden: