Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Opmerking
Azure AI Zoeken is beschikbaar via de Azure-portal, REST API's en Azure-SDK's. Het vormt ook een basis voor Foundry IQ, de beheerde kennislaag die bedrijfsinhoud transformeert in herbruikbare, machtigingsbewuste knowledge bases voor agents in de Microsoft Foundry-portal.
Meer informatie over het gebruik van Azure AI Zoeken om documenten te indexeren die zijn versleuteld met een door de klant beheerde sleutel in Azure Blob Storage.
Normaal gesproken kan een indexeerfunctie geen inhoud extraheren uit blobs die zijn versleuteld met behulp van versleuteling aan de clientzijde in de Azure Blob Storage-clientbibliotheek. Dit komt doordat de indexeerfunctie geen toegang heeft tot de door de klant beheerde versleutelingssleutel in Azure Key Vault. Met behulp van de aangepaste vaardigheid DecryptBlobFile en de vaardigheid Documentextractie kunt u echter beheerde toegang tot de sleutel bieden om de bestanden te ontsleutelen en vervolgens inhoud ervan te extraheren. Hierdoor kunt u deze documenten indexeren en verrijken zonder de versleutelingsstatus van uw opgeslagen documenten in gevaar te brengen.
Te beginnen met eerder versleutelde hele documenten (ongestructureerde tekst) zoals PDF, HTML, DOCX en PPTX in Azure Blob Storage, maakt deze zelfstudie gebruik van een REST-client en de Search REST API's om:
- Een pijplijn definiëren waarmee de documenten worden ontsleuteld en tekst uit de documenten wordt geëxtraheerd
- Een index definiëren om de uitvoer op te slaan
- De pijplijn uitvoeren om de index te maken en te laden
- Resultaten verkennen met behulp van zoekopdrachten in volledige tekst en een syntaxis voor uitgebreide query's
Vereiste voorwaarden
Een Azure-account met een actief abonnement. Gratis een account maken
Azure AI Zoeken op elke laag of regio.
Azure Storage, Standard-prestaties (algemeen gebruik v2).
Blobs die zijn versleuteld met een door de klant beheerde sleutel. Zie Zelfstudie: Blobs versleutelen en ontsleutelen met behulp van Azure Key Vault om voorbeeldgegevens te maken.
Azure Key Vault in hetzelfde abonnement als Azure AI Zoeken. Voor de sleutelkluis moeten soft-delete en purge bescherming zijn ingeschakeld.
Aangepaste skill-implementatie maakt een Azure Function-app en een Azure Storage-account aan. Deze resources worden voor u gemaakt, zodat ze niet worden vermeld als een vereiste. Wanneer u deze zelfstudie hebt voltooid, moet u de resources opschonen, zodat u niet wordt gefactureerd voor services die u niet gebruikt.
Opmerking
Vaardigheden vereisen vaak het koppelen van een Microsoft Foundry-resource. Zoals geschreven, heeft deze vaardighedenset geen afhankelijkheid van Foundry, dus er is geen sleutel vereist. Als u later verrijkingen toevoegt die ingebouwde vaardigheden aanroepen, moet u uw vaardighedenset dienovereenkomstig bijwerken.
De aangepaste vaardigheid implementeren
In deze handleiding wordt het voorbeeldproject DecryptBlobFile gebruikt uit de Azure Search Power Skills GitHub-opslagplaats. In deze sectie implementeert u de vaardigheid in een Azure-functie, zodat deze kan worden gebruikt in een vaardighedenset. Een ingebouwd implementatiescript maakt een Azure Function-resource met een psdbf-function-app-voorvoegsel en laadt de vaardigheid. U wordt gevraagd een abonnement en resourcegroep op te geven. Zorg ervoor dat u het abonnement kiest dat uw Azure Key Vault-exemplaar bevat.
Operationeel neemt de vaardigheid DecryptBlobFile de URL en het SAS-token voor elke blob als invoer. Het gedownloade, ontsleutelde bestand wordt uitgevoerd met behulp van het bestandsreferentiecontract dat azure AI Search verwacht. Zoals u weet, heeft DecryptBlobFile de versleutelingssleutel nodig om de ontsleuteling uit te voeren. Als onderdeel van de installatie maakt u ook een toegangsbeleid dat DecryptBlobFile-functie toegang verleent tot de versleutelingssleutel in Azure Key Vault.
Selecteer Implementeren in Azure op de landingspagina van DecryptBlobFile om de Resource Manager-sjabloon te openen in Azure Portal.
Kies het abonnement waarin uw Azure Key Vault-exemplaar bestaat. Deze zelfstudie werkt niet als u een ander abonnement kiest.
Selecteer een bestaande resourcegroep of maak een nieuwe. Een toegewezen resourcegroep maakt het opschonen later eenvoudiger.
Selecteer Beoordelen en maken, ga akkoord met de voorwaarden en selecteer Vervolgens Maken om de Azure-functie te implementeren.
Wacht tot de implementatie is voltooid.
U moet een Azure Function-app hebben die de ontsleutelingslogica en een Azure Storage-resource bevat waarmee toepassingsgegevens worden opgeslagen. In de volgende stappen geeft u de app machtigingen voor toegang tot de sleutelkluis en verzamelt u informatie die u nodig hebt voor de REST-aanroepen.
Machtigingen verlenen in Azure Key Vault
Ga naar uw Azure Key Vault-service in Azure Portal. Maak een toegangsbeleid in Azure Key Vault waarmee sleuteltoegang tot de aangepaste vaardigheid wordt verleend.
Selecteer in het linkerdeelvenster Toegangsbeleid en selecteer vervolgens + Maken om de wizard Een toegangsbeleid maken te starten.
Selecteer op de pagina Machtigingen onder Configureren vanuit sjabloonde optie Azure Data Lake Storage of Azure Storage.
Kies Volgende.
Selecteer op de pagina Principal het Azure Function-exemplaar dat u hebt geïmplementeerd. U kunt ernaar zoeken met behulp van het resourcevoorvoegsel, dat een standaardwaarde van psdbf-function-app heeft.
Kies Volgende.
Bij Beoordelen en maken selecteert u Maken.
App-gegevens verzamelen
Ga naar de functie psdbf-function-app in de Azure portal. Noteer de volgende eigenschappen die u nodig hebt voor de REST-aanroepen.
Haal de functie-URL op, die u kunt vinden onder Essentials op de hoofdpagina voor de functie.
Haal de hostsleutelcode op, die u kunt vinden door naar App-sleutels te gaan en de standaardsleutel weer te geven en de waarde te kopiëren.
Een beheerderssleutel en URL voor Azure AI Zoeken ophalen
Ga naar uw zoekservice in Azure Portal.
Haal op de overzichtspagina van uw zoekservice de naam van uw zoekservice op. U kunt uw servicenaam bevestigen door de eindpunt-URL te controleren. Als uw eindpunt-URL bijvoorbeeld
https://mydemo.search.windows.netis, is uw servicenaammydemo.Haal inInstellingensleutels> een beheerderssleutel op voor volledige rechten voor de service. Er zijn twee uitwisselbare beheersleutels, bedoeld voor bedrijfscontinuïteit voor het geval u er een moet vervangen. U kunt één van beide sleutels gebruiken om objecten toe te voegen, wijzigen of verwijderen.
Een API-sleutel is vereist in de header van elke aanvraag die naar uw service wordt verzonden. Een geldige sleutel brengt een vertrouwensrelatie tot stand, per aanvraag, tussen de toepassing die de aanvraag verzendt en de service waarmee deze wordt verwerkt.
Een REST-client instellen
Maak de volgende variabelen voor eindpunten en sleutels.
| Variable | Waar u het kunt krijgen |
|---|---|
admin-key |
Op de pagina Sleutels van de Azure AI Zoeken-service. |
search-service-name |
De naam van de Azure AI Zoeken-service. De URL is https://{{search-service-name}}.search.windows.net. |
storage-connection-string |
Selecteer in het opslagaccount op het tabblad Toegangssleutels deverbindingsreeks>. |
storage-container-name |
De naam van de blobcontainer met de versleutelde bestanden die moeten worden geïndexeerd. |
function-uri |
In de Azure-functie onder Essentials op de hoofdpagina. |
function-code |
Ga in de Azure-functie naar App-sleutels, waarbij de standaardsleutel wordt weergegeven en de waarde wordt gekopieerd. |
api-version |
Laat staan als 2020-06-30. |
datasource-name |
Laat dit als encrypted-blobs-ds staan. |
index-name |
Laat deze staan als encrypted-blobs-idx. |
skillset-name |
Laat dit staan als encrypted blobs-ss. |
indexer-name |
Laat encrypted-blobs-ixr staan. |
Elke aanvraag controleren en uitvoeren
Gebruik de volgende HTTP-aanvragen om de objecten van een verrijkingspijplijn te maken.
PUT-aanvraag voor het maken van de index: deze zoekindex bevat de gegevens die Azure AI Zoeken gebruikt en retourneert.
POST-aanvraag voor het maken van de gegevensbron: Deze gegevensbron geeft de verbinding aan met uw opslagaccount met de geëncrypteerde blobbestanden.
PUT-aanvraag voor het maken van de vaardighedenset: De vaardighedenset specificeert de aangepaste vaardigheidsdefinitie voor de Azure-functie waarmee de gegevens van het blobbestand worden ontsleuteld. Er wordt ook een DocumentExtractionSkill opgegeven om de tekst uit elk document te extraheren nadat het is ontsleuteld.
PUT-aanvraag voor het maken van de indexeerfunctie: als u de indexeerfunctie uitvoert, worden de blobs opgehaald, worden de vaardighedenset toegepast en worden de resultaten opgeslagen. U moet deze aanvraag het laatst uitvoeren. De aangepaste vaardigheid in de vaardighedenset roept de ontsleutelingslogica aan.
Indexering bewaken
Indexering en verrijking beginnen zodra u de aanvraag Indexeerfunctie maken indient. Afhankelijk van het aantal documenten in uw opslagaccount kan het indexeren enige tijd duren. Als u wilt weten of de indexeerfunctie nog steeds wordt uitgevoerd, verzendt u een get Indexer-statusaanvraag en bekijkt u het antwoord om te zien of de indexeerfunctie wordt uitgevoerd of fout- en waarschuwingsgegevens wordt weergegeven.
Als u de gratis laag gebruikt, verwacht u het volgende bericht: "Could not extract content or metadata from your document. Truncated extracted text to '32768' characters". Dit bericht wordt weergegeven omdat blobindexering op de gratis laag een limiet van 32.000 heeft voor tekenextractie. Dit bericht wordt niet weergegeven voor deze gegevensset op hogere lagen.
Uw inhoud doorzoeken
Nadat de uitvoering van de indexeerfunctie is voltooid, kunt u query's uitvoeren om te controleren of de gegevens zijn ontsleuteld en geïndexeerd. Ga naar uw Azure AI Zoeken-service in Azure Portal en gebruik Search Explorer om query's uit te voeren op de geïndexeerde gegevens.
De hulpbronnen opschonen
Wanneer je in je eigen abonnement werkt, is het aan het einde van een project een goed idee om de resources die je niet meer nodig hebt te verwijderen. Ressources die actief blijven draaien, kunnen geld kosten. U kunt resources afzonderlijk verwijderen, maar u kunt ook de resourcegroep verwijderen als u de volledige resourceset wilt verwijderen.
U kunt resources vinden en beheren in de Azure Portal met behulp van de koppeling Alle resources of Resourcegroepen in het linkernavigatiedeelvenster.
Volgende stappen
Nu u versleutelde bestanden hebt geïndexeerd, kunt u deze pijplijn herhalen door meer vaardigheden toe te voegen om uw gegevens te verrijken en meer inzicht te krijgen.
Als u met dubbel versleutelde gegevens werkt, wilt u mogelijk de indexversleutelingsfuncties onderzoeken die beschikbaar zijn in Azure AI Zoeken. Hoewel de indexeerfunctie ontsleutelde gegevens nodig heeft voor indexeringsdoeleinden, kan de index zodra de index bestaat, worden versleuteld in een zoekindex met behulp van een door de klant beheerde sleutel. Dit zorgt ervoor dat uw gegevens altijd worden versleuteld wanneer ze inactief zijn. Zie Door de klant beheerde sleutels configureren voor gegevensversleuteling in Azure AI Zoeken voor meer informatie.