Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
I den här snabbstarten använder du rollbaserad åtkomstkontroll (RBAC) och Microsoft Entra-ID för att upprätta en nyckellös anslutning till din Azure AI Search-tjänst. Sedan använder du Python i Visual Studio Code för att interagera med din tjänst.
Nyckellösa anslutningar ger förbättrad säkerhet genom detaljerade behörigheter och identitetsbaserad autentisering. Vi rekommenderar inte hårdkodade API-nycklar, men om du föredrar dem kan du läsa Ansluta till Azure AI Search med hjälp av nycklar.
Förutsättningar
Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
En Azure AI Search-tjänst i valfri region eller nivå.
Azure CLI för nyckellös autentisering med Microsoft Entra-ID.
Visual Studio Code med Python-tillägget och Jupyter-paketet.
Konfigurera rollbaserad åtkomst
I det här avsnittet aktiverar du RBAC på din Azure AI Search-tjänst och tilldelar de roller som krävs för att skapa, läsa in och fråga efter sökobjekt. Mer information om de här stegen finns i Ansluta till Azure AI Search med hjälp av roller.
Så här konfigurerar du åtkomst:
Logga in på Azure-portalen och välj din söktjänst.
Välj Inställningar > Nycklar i den vänstra rutan.
Välj Rollbaserad åtkomstkontroll eller Båda om du behöver tid för att överföra klienter till RBAC.
Välj Åtkomstkontroll (IAM) i den vänstra rutan.
Välj Lägg till>Lägg till rolltilldelning.
Tilldela rollen Search Service Contributor till ditt användarkonto eller din hanterade identitet.
Upprepa rolltilldelningen för Search Index Data Contributor.
Hämta tjänstinformation
I det här avsnittet hämtar du prenumerations-ID och slutpunkt för din Azure AI Search-tjänst. Om du bara har en prenumeration hoppar du över prenumerations-ID:t och hämtar bara slutpunkten. Du använder dessa värden i de återstående avsnitten i den här snabbstarten.
Så här hämtar du din tjänstinformation:
Logga in på Azure-portalen och välj din söktjänst.
Välj Översikt i den vänstra rutan.
Anteckna prenumerations-ID och slutpunkt.
Logga in på Azure
Innan du ansluter till azure AI Search-tjänsten använder du Azure CLI för att logga in på prenumerationen som innehåller din tjänst. Det här steget etablerar din Microsoft Entra-identitet, som DefaultAzureCredential
använder för att autentisera begäranden i nästa avsnitt.
Så här loggar du in:
Öppna ett kommandoradsverktyg i det lokala systemet.
Logga in på Azure. Om du har flera prenumerationer väljer du det vars ID du fick i Hämta tjänstinformation.
az login
Ansluta till Azure AI Search
Anmärkning
Det här avsnittet illustrerar det grundläggande Python-mönstret för nyckellösa anslutningar. Omfattande vägledning finns i en specifik snabbstart eller självstudie, till exempel Snabbstart: Köra agentisk hämtning i Azure AI Search.
Du kan använda Python-notebook-filer i Visual Studio Code för att skicka begäranden till din Azure AI Search-tjänst. Använd klassen från Azure Identity-biblioteket för att begära autentisering DefaultAzureCredential
.
Så här ansluter du med Python:
Öppna Visual Studio Code i ditt lokala system.
Skapa en
.ipynb
-fil.Skapa en kodcell för att installera biblioteken
azure-identity
ochazure-search-documents
.pip install azure-identity azure-search-documents
Skapa en annan kodcell för att autentisera och ansluta till söktjänsten.
from azure.identity import DefaultAzureCredential from azure.search.documents.indexes import SearchIndexClient service_endpoint = "PUT-YOUR-SEARCH-SERVICE-ENDPOINT-HERE" credential = DefaultAzureCredential() client = SearchIndexClient(endpoint=service_endpoint, credential=credential) # List existing indexes indexes = client.list_indexes() for index in indexes: index_dict = index.as_dict() print(json.dumps(index_dict, indent=2))
Ange
service_endpoint
det värde som du fick i Hämta tjänstinformation.Välj Kör alla för att köra båda kodcellerna.
Utdata bör visa en lista över befintliga index (om några) i söktjänsten, vilket indikerar en lyckad anslutning.
Felsöka 401-fel
Om du får ett 401-fel följer du de här felsökningsstegen:
Gå tillbaka till Konfigurera rollbaserad åtkomst. Söktjänsten måste ha rollbaserad åtkomstkontroll eller Båda aktiverade. Principer på prenumerations- eller resursgruppsnivå kan också åsidosätta dina rolltilldelningar.
Gå tillbaka till Logga in på Azure. Du måste logga in på prenumerationen som innehåller din söktjänst.
Kontrollera att slutpunktsvariabeln har omgivande citattecken.
Om allt annat misslyckas startar du om enheten för att ta bort cachelagrade token och upprepar sedan stegen i den här snabbstarten och börjar med Logga in på Azure.
I den här snabbstarten använder du rollbaserad åtkomstkontroll (RBAC) och Microsoft Entra-ID för att upprätta en nyckellös anslutning till din Azure AI Search-tjänst. Sedan använder du REST i Visual Studio Code för att interagera med din tjänst.
Nyckellösa anslutningar ger förbättrad säkerhet genom detaljerade behörigheter och identitetsbaserad autentisering. Vi rekommenderar inte hårdkodade API-nycklar, men om du föredrar dem kan du läsa Ansluta till Azure AI Search med hjälp av nycklar.
Förutsättningar
Ett Azure-konto med en aktiv prenumeration. Skapa ett konto kostnadsfritt.
En Azure AI Search-tjänst i valfri region eller nivå.
Azure CLI för nyckellös autentisering med Microsoft Entra-ID.
Konfigurera rollbaserad åtkomst
I det här avsnittet aktiverar du RBAC på din Azure AI Search-tjänst och tilldelar de roller som krävs för att skapa, läsa in och fråga efter sökobjekt. Mer information om de här stegen finns i Ansluta till Azure AI Search med hjälp av roller.
Så här konfigurerar du åtkomst:
Logga in på Azure-portalen och välj din söktjänst.
Välj Inställningar > Nycklar i den vänstra rutan.
Välj Rollbaserad åtkomstkontroll eller Båda om du behöver tid för att överföra klienter till RBAC.
Välj Åtkomstkontroll (IAM) i den vänstra rutan.
Välj Lägg till>Lägg till rolltilldelning.
Tilldela rollen Search Service Contributor till ditt användarkonto eller din hanterade identitet.
Upprepa rolltilldelningen för Search Index Data Contributor.
Hämta tjänstinformation
I det här avsnittet hämtar du prenumerations-ID och slutpunkt för din Azure AI Search-tjänst. Om du bara har en prenumeration hoppar du över prenumerations-ID:t och hämtar bara slutpunkten. Du använder dessa värden i de återstående avsnitten i den här snabbstarten.
Så här hämtar du din tjänstinformation:
Logga in på Azure-portalen och välj din söktjänst.
Välj Översikt i den vänstra rutan.
Anteckna prenumerations-ID och slutpunkt.
Hämta token
Innan du ansluter till azure AI Search-tjänsten använder du Azure CLI för att logga in på prenumerationen som innehåller din tjänst och generera en Microsoft Entra-ID-token. Du använder den här token för att autentisera begäranden i nästa avsnitt.
Så här hämtar du din token:
Öppna ett kommandoradsverktyg i det lokala systemet.
Logga in på Azure. Om du har flera prenumerationer väljer du det vars ID du fick i Hämta tjänstinformation.
az login
Generera en åtkomsttoken.
az account get-access-token --scope https://search.azure.com/.default --query accessToken --output tsv
Anteckna tokenresultat.
Ansluta till Azure AI Search
Anmärkning
Det här avsnittet illustrerar det grundläggande REST-mönstret för nyckellösa anslutningar. Omfattande vägledning finns i en specifik snabbstart eller självstudie, till exempel Snabbstart: Köra agentisk hämtning i Azure AI Search.
Du kan använda REST-klienttillägget i Visual Studio Code för att skicka begäranden till din Azure AI Search-tjänst. För autentisering av begäran ska du inkludera en Authorization
rubrik med den Microsoft Entra-ID-token som du skapade tidigare.
Så här ansluter du med REST:
Öppna Visual Studio Code i ditt lokala system.
Skapa en
.rest
eller.http
fil.Klistra in följande platshållare och förfrågan i filen.
@baseUrl = PUT-YOUR-SEARCH-SERVICE-ENDPOINT-HERE @token = PUT-YOUR-PERSONAL-IDENTITY-TOKEN-HERE ### List existing indexes GET {{baseUrl}}/indexes?api-version=2024-07-01 HTTP/1.1 Content-Type: application/json Authorization: Bearer {{token}}
Ersätt
@baseUrl
med det värde som du fick i Hämta tjänstinformation.Ersätt
@token
med det värde som du fick i Hämta token.Under
### List existing indexes
väljer du Skicka begäran.Du bör få ett
HTTP/1.1 200 OK
svar som anger en lyckad anslutning till söktjänsten.
Felsöka 401-fel
Om du får ett 401-fel följer du de här felsökningsstegen:
Gå tillbaka till Konfigurera rollbaserad åtkomst. Söktjänsten måste ha rollbaserad åtkomstkontroll eller Båda aktiverade. Principer på prenumerations- eller resursgruppsnivå kan också åsidosätta dina rolltilldelningar.
Gå tillbaka till Hämta token. Du måste logga in på prenumerationen som innehåller din söktjänst.
Kontrollera att dina slutpunkts- och tokenvariabler inte har omgivande citattecken eller extra blanksteg.
Kontrollera att din token inte har symbolen
@
i begärandehuvudet. Om variabeln till exempel är@token
ska referensen i begäran vara{{token}}
.Om allt annat misslyckas startar du om enheten för att ta bort cachelagrade token och upprepar sedan stegen i den här snabbstarten och börjar med Hämta token.