Versleutelde objecten en informatie zoeken
In Azure AI Search worden door de klant beheerde versleutelingssleutels gemaakt, opgeslagen en beheerd in Azure Key Vault. Als u wilt bepalen of een object is versleuteld of welke sleutelnaam of versie wordt gebruikt in Azure Key Vault, gebruikt u de REST API of een Azure SDK om de eigenschap encryptionKey op te halen uit de objectdefinitie in uw zoekservice.
Objecten die niet zijn versleuteld met een door de klant beheerde sleutel hebben een lege eigenschap encryptionKey . Anders ziet u mogelijk een definitie die vergelijkbaar is met het volgende voorbeeld.
"encryptionKey":{
"keyVaultUri":"https://demokeyvault.vault.azure.net",
"keyVaultKeyName":"myEncryptionKey",
"keyVaultKeyVersion":"eaab6a663d59439ebb95ce2fe7d5f660",
"accessCredentials":{
"applicationId":"00001111-aaaa-2222-bbbb-3333cccc4444",
"applicationSecret":"myApplicationSecret"
}
}
De encryptionKey-constructie is hetzelfde voor alle versleutelde objecten. Het is een eigenschap op het eerste niveau, op hetzelfde niveau als de objectnaam en beschrijving.
Machtigingen voor het ophalen van objectdefinities
U moet inzender of gelijkwaardige machtigingen voor de zoekservice hebben. Als u in plaats daarvan verificatie op basis van sleutels wilt gebruiken, geeft u een beheer-API-sleutel op. Beheerdersmachtigingen zijn vereist voor aanvragen die objectdefinities en metagegevens retourneren. De eenvoudigste manier om de beheer-API-sleutel op te halen, is via Azure Portal.
Meld u aan bij Azure Portal en open de overzichtspagina van de zoekservice.
Selecteer aan de linkerkant Sleutels en kopieer een beheer-API.
Voor de resterende stappen schakelt u over naar PowerShell en de REST API. In Azure Portal worden geen informatie over de versleutelingssleutel voor een object weergegeven.
Objecteigenschappen ophalen
Gebruik PowerShell en REST om de volgende opdrachten uit te voeren om de variabelen in te stellen en objectdefinities op te halen.
U kunt ook de Azure SDK voor .NET, Python, JavaScript en Java gebruiken.
Maak eerst verbinding met uw Azure-account.
Connect-AzAccount
Als u meer dan één actief abonnement in uw tenant hebt, geeft u het abonnement op dat uw zoekservice bevat:
Set-AzContext -Subscription <your-subscription-ID>
Stel de headers in die worden gebruikt voor elke aanvraag in de huidige sessie. Geef de beheer-API-sleutel op die wordt gebruikt voor verificatie van de zoekservice.
$headers = @{
'api-key' = '<YOUR-ADMIN-API-KEY>'
'Content-Type' = 'application/json'
'Accept' = 'application/json' }
Als u een lijst met alle zoekindexen wilt retourneren, stelt u het eindpunt in op de verzameling indexen.
$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/indexes?api-version=2024-07-01&$select=name'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json
Als u een specifieke indexdefinitie wilt retourneren, geeft u de naam op in het pad. De eigenschap encryptionKey bevindt zich aan het einde.
$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/indexes/<YOUR-INDEX-NAME>?api-version=2024-07-01'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json
Als u synoniemenoverzichten wilt retourneren, stelt u het eindpunt in op de verzameling synoniemen en verzendt u de aanvraag.
$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/synonyms?api-version=2024-07-01&$select=name'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json
In het volgende voorbeeld wordt een specifieke synoniemtoewijzingsdefinitie geretourneerd, inclusief de eigenschap encryptionKey, aan het einde van de definitie.
$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/synonyms/<YOUR-SYNONYM-MAP-NAME>?api-version=2024-07-01'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json
Gebruik hetzelfde patroon om de eigenschap encryptionKey te retourneren voor andere objecten op het hoogste niveau, zoals indexeerfuncties, vaardighedensets, gegevensbronnen en indexaliassen.
Volgende stappen
U wordt aangeraden logboekregistratie in te schakelen in Azure Key Vault, zodat u het sleutelgebruik kunt bewaken.
Voor meer informatie over het gebruik van Azure Key of het configureren van door de klant beheerde versleuteling: