Vyhledání šifrovaných objektů a informací

Ve službě Azure AI Search se šifrovací klíče spravované zákazníkem vytvářejí, ukládají a spravují ve službě Azure Key Vault. Pokud potřebujete zjistit, jestli je objekt zašifrovaný nebo jaký název klíče nebo verze se používá ve službě Azure Key Vault, pomocí rozhraní REST API nebo sady Azure SDK načtěte vlastnost encryptionKey z definice objektu ve vyhledávací službě.

Objekty, které nejsou šifrované pomocí klíče spravovaného zákazníkem, mají prázdnou vlastnost encryptionKey . V opačném případě se může zobrazit definice podobná následujícímu příkladu.

"encryptionKey":{
   "keyVaultUri":"https://demokeyvault.vault.azure.net",
   "keyVaultKeyName":"myEncryptionKey",
   "keyVaultKeyVersion":"eaab6a663d59439ebb95ce2fe7d5f660",
   "accessCredentials":{
      "applicationId":"00000000-0000-0000-0000-000000000000",
      "applicationSecret":"myApplicationSecret"
   }
}

Konstruktor encryptionKey je stejný pro všechny šifrované objekty. Jedná se o vlastnost první úrovně na stejné úrovni jako název a popis objektu.

Oprávnění pro načítání definic objektů

Musíte mít oprávnění Přispěvatel vyhledávací služby nebo ekvivalentní oprávnění. Pokud chcete místo toho použít ověřování založené na klíčích , zadejte klíč rozhraní API pro správu. Správa oprávnění jsou vyžadována u požadavků, které vracejí definice a metadata objektu. Nejjednodušší způsob, jak získat klíč rozhraní API pro správu, je prostřednictvím portálu.

  1. Přihlaste se k webu Azure Portal a otevřete stránku s přehledem vyhledávací služby.

  2. Na levé straně vyberte Klíče a zkopírujte rozhraní API pro správu.

U zbývajících kroků přepněte do PowerShellu a rozhraní REST API. Portál nezobrazuje informace o šifrovacím klíči pro žádný objekt.

Načtení vlastností objektu

Pomocí PowerShellu a REST spusťte následující příkazy k nastavení proměnných a získání definic objektů.

Alternativně můžete také použít sadu Azure SDK pro .NET, Python, JavaScript a Javu.

Nejprve se připojte ke svému účtu Azure.

Connect-AzAccount

Pokud máte ve svém tenantovi více než jedno aktivní předplatné, zadejte předplatné obsahující vaši vyhledávací službu:

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

Nastavte hlavičky použité pro každý požadavek v aktuální relaci. Zadejte klíč rozhraní API správce, který se používá k ověřování vyhledávací služby.

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

Pokud chcete vrátit seznam všech indexů vyhledávání, nastavte koncový bod na kolekci indexů.

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

Pokud chcete vrátit konkrétní definici indexu, zadejte jeho název v cestě. Vlastnost encryptionKey je na konci.

$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/indexes/<YOUR-INDEX-NAME>?api-version=2023-11-01'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json

Pokud chcete vrátit mapy synonym, nastavte koncový bod na kolekci synonym a odešlete požadavek.

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

Následující příklad vrátí konkrétní definici mapování synonym, včetně encryptionKey vlastnost je na konci definice.

$uri= 'https://<YOUR-SEARCH-SERVICE>.search.windows.net/synonyms/<YOUR-SYNONYM-MAP-NAME>?api-version=2023-11-01'
Invoke-RestMethod -Uri $uri -Headers $headers | ConvertTo-Json

Stejný vzor použijte k vrácení vlastnosti encryptionKey pro další objekty nejvyšší úrovně, jako jsou indexery, sady dovedností, zdroje dat a aliasy indexu.

Další kroky

Doporučujeme povolit protokolování ve službě Azure Key Vault, abyste mohli monitorovat využití klíčů.

Další informace o použití klíče Azure nebo konfiguraci šifrování spravovaného zákazníkem: