Condividi tramite


Trovare oggetti crittografati e informazioni

In Azure AI Search, le chiavi di crittografia gestite dal cliente vengono create, archiviate e gestite in Azure Key Vault. Se è necessario stabilire se un oggetto è crittografato o quale nome o versione della chiave vengono usati in Azure Key Vault, utilizzare l'API REST o Azure SDK per recuperare la proprietà encryptionKey dalla definizione dell'oggetto nel servizio di ricerca.

Negli oggetti che non sono crittografati con una chiave gestita dal cliente, la proprietà encryptionKey è vuota. Oppure potrebbe essere presente una definizione simile all'esempio seguente.

"encryptionKey":{
   "keyVaultUri":"https://demokeyvault.vault.azure.net",
   "keyVaultKeyName":"myEncryptionKey",
   "keyVaultKeyVersion":"eaab6a663d59439ebb95ce2fe7d5f660",
   "accessCredentials":{
      "applicationId":"00001111-aaaa-2222-bbbb-3333cccc4444",
      "applicationSecret":"myApplicationSecret"
   }
}

Il costrutto encryptionKey è lo stesso per tutti gli oggetti crittografati. Si tratta di una proprietà di primo livello, allo stesso livello del nome e della descrizione dell'oggetto.

Autorizzazioni per il recupero delle definizioni di oggetti

È necessario disporre delle autorizzazioni di Collaboratore Servizio di ricerca o di un ruolo equivalente. Per usare l'autenticazione basata su chiave, specificare invece una chiave API di amministrazione. Le autorizzazioni di amministratore sono necessarie per le richieste che restituiscono definizioni di oggetti e metadati. Il modo più semplice per recuperare la chiave API di amministrazione consiste nell'utilizzare il portale.

  1. Accedere al portale di Azure e aprire la pagina della panoramica del servizio di ricerca.

  2. Sul lato sinistro, selezionare Chiavi e copiare un'API di amministrazione.

Per i passaggi rimanenti, passare a PowerShell e all'API REST. Il portale non mostra le informazioni sulla chiave di crittografia per alcun oggetto.

Recuperare le proprietà dell'oggetto

Usare PowerShell e REST per eseguire i comandi seguenti che consentono di configurare le variabili e recuperare le definizioni degli oggetti.

In alternativa, è anche possibile usare Azure SDK per .NET, Python, JavaScript e Java.

Connettersi innanzitutto all'account Azure.

Connect-AzAccount

Se nel tenant sono presenti più sottoscrizioni attive, specificare la sottoscrizione contenente il servizio di ricerca:

 Set-AzContext -Subscription <your-subscription-ID>

Configurare le intestazioni usate in ogni richiesta nella sessione corrente. Specificare la chiave API di amministrazione usata per l'autenticazione del servizio di ricerca.

$headers = @{
'api-key' = '<YOUR-ADMIN-API-KEY>'
'Content-Type' = 'application/json'
'Accept' = 'application/json' }

Per restituire un elenco di tutti gli indici di ricerca, impostare l'endpoint sulla raccolta di indici.

$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/indexes?api-version=2024-07-01&$select=name'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json

Per restituire una definizione di indice specifica, indicarne il nome nel percorso. La proprietà encryptionKey si trova alla fine.

$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

Per restituire mappe di sinonimi, impostare l'endpoint sulla raccolta di sinonimi e quindi inviare la richiesta.

$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/synonyms?api-version=2024-07-01&$select=name'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json

Nell'esempio seguente, viene restituita la definizione di una mappa di sinonimi specifica, inclusa la proprietà encryptionKey che si trova verso la fine della definizione.

$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

Usare lo stesso modello per restituire la proprietà encryptionKey per altri oggetti di primo livello, ad esempio indicizzatori, set di competenze, origini dati e alias di indice.

Passaggi successivi

È consigliabile abilitare la registrazione in Azure Key Vault in modo da poter monitorare l'utilizzo della chiave.

Per ulteriori informazioni sull'uso di Azure Key Vault o sulla configurazione della crittografia gestita dal cliente: