Şifrelenmiş nesneleri ve bilgileri bulma

Azure AI Search'te müşteri tarafından yönetilen şifreleme anahtarları Azure Key Vault'ta oluşturulur, depolanır ve yönetilir. Bir nesnenin şifrelenip şifrelenmediğini veya Azure Key Vault'ta hangi anahtar adının veya sürümün kullanıldığını belirlemeniz gerekiyorsa, arama hizmetinizdeki nesne tanımından encryptionKey özelliğini almak için REST API veya Azure SDK'sını kullanın.

Müşteri tarafından yönetilen anahtarla şifrelenmemiş nesneler boş bir encryptionKey özelliğine sahiptir. Aksi takdirde, aşağıdaki örneğe benzer bir tanım görebilirsiniz.

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

encryptionKey yapısı tüm şifrelenmiş nesneler için aynıdır. Nesne adı ve açıklamasıyla aynı düzeyde birinci düzey bir özelliktir.

Nesne tanımlarını alma izinleri

Arama Hizmeti Katkıda Bulunanı veya eşdeğer izinlere sahip olmanız gerekir. Bunun yerine anahtar tabanlı kimlik doğrulaması kullanmak için bir yönetici API anahtarı sağlayın. nesne tanımlarını ve meta verileri döndüren isteklerde Yönetici izinleri gereklidir. Yönetici API anahtarını almanın en kolay yolu portaldan geçmektir.

  1. Azure portalında oturum açın ve arama hizmetine genel bakış sayfasını açın.

  2. Sol tarafta Anahtarlar'ı seçin ve bir yönetici API'sini kopyalayın.

Kalan adımlar için PowerShell ve REST API'ye geçin. Portalda herhangi bir nesne için şifreleme anahtarı bilgileri gösterilmiyor.

Nesne özelliklerini alma

Değişkenleri ayarlamak ve nesne tanımlarını almak için aşağıdaki komutları çalıştırmak için PowerShell ve REST kullanın.

Alternatif olarak.NET, Python, JavaScript ve Java için Azure SDK'sını da kullanabilirsiniz.

İlk olarak Azure hesabınıza bağlanın.

Connect-AzAccount

Kiracınızda birden fazla etkin aboneliğiniz varsa arama hizmetinizi içeren aboneliği belirtin:

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

Geçerli oturumdaki her istekte kullanılan üst bilgileri ayarlayın. Arama hizmeti kimlik doğrulaması için kullanılan yönetici API anahtarını sağlayın.

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

Tüm arama dizinlerinin listesini döndürmek için uç noktayı dizin koleksiyonu olarak ayarlayın.

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

Belirli bir dizin tanımını döndürmek için yolda adını belirtin. encryptionKey özelliği sonundadır.

$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

Eş anlamlı eşlemeleri döndürmek için uç noktayı eş anlamlılar koleksiyonuna ayarlayın ve isteği gönderin.

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

Aşağıdaki örnek, encryptionKey özelliğinin tanımın sonuna doğru olması da dahil olmak üzere belirli bir eş anlamlı eşleme tanımını döndürür.

$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

Dizin oluşturucular, beceri kümeleri, veri kaynakları ve dizin diğer adları gibi diğer üst düzey nesneler için encryptionKey özelliğini döndürmek için aynı deseni kullanın.

Sonraki adımlar

Anahtar kullanımını izleyebilebilmeniz için Azure Key Vault'ta günlüğe kaydetmeyi etkinleştirmenizi öneririz.

Azure Anahtarını kullanma veya müşteri tarafından yönetilen şifrelemeyi yapılandırma hakkında daha fazla bilgi için: