암호화된 개체 및 정보 찾기

Azure AI Search에서 고객 관리형 암호화 키는 Azure Key Vault에서 생성, 저장 및 관리됩니다. 개체가 암호화되었는지 또는 Azure Key Vault에서 사용되는 키 이름 또는 버전을 결정해야 하는 경우 REST API 또는 Azure SDK를 사용하여 검색 서비스의 개체 정의에서 encryptionKey 속성을 검색합니다.

고객 관리형 키로 암호화되지 않은 개체에는 빈 encryptionKey 속성이 있습니다. 그렇지 않으면 다음 예제와 유사한 정의가 표시될 수 있습니다.

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

encryptionKey 구문은 암호화된 모든 개체에 대해 동일합니다. 개체 이름 및 설명과 동일한 수준에서 첫 번째 수준 속성입니다.

개체 정의를 검색하기 위한 권한

Search Service 기여자 또는 동등한 권한이 있어야 합니다. 대신 키 기반 인증을 사용하려면 관리자 API 키를 제공합니다. 개체 정의 및 메타데이터를 반환하는 요청에는 관리 권한이 필요합니다. 관리 API 키를 가져오는 가장 쉬운 방법은 포털을 사용하는 것입니다.

  1. Azure Portal에 로그인하고 검색 서비스 개요 페이지를 엽니다.

  2. 왼쪽에서 를 선택하고 관리 API를 복사합니다.

나머지 단계를 수행하려면 PowerShell 및 REST API로 전환합니다. 포털에는 개체에 대한 암호화 키 정보가 표시되지 않습니다.

개체 속성 검색

PowerShell 및 REST를 사용하여 다음 명령을 실행하여 변수를 설정하고 개체 정의를 가져옵니다.

또는 .NET, Python, JavaScript 및 Java용 Azure SDK를 사용할 수도 있습니다.

먼저 Azure 계정에 연결합니다.

Connect-AzAccount

테넌트에 활성 구독이 두 개 이상 있는 경우 검색 서비스를 포함하는 구독을 지정합니다.

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

현재 세션의 각 요청에 사용되는 헤더를 설정합니다. 검색 서비스 인증에 사용되는 관리자 API 키를 제공합니다.

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

모든 검색 인덱스 목록을 반환하려면 엔드포인트를 인덱스 컬렉션으로 설정합니다.

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

특정 인덱스 정의를 반환하려면 경로에 해당 이름을 제공합니다. encryptionKey 속성은 끝에 있습니다.

$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

동의어 맵을 반환하려면 엔드포인트를 동의어 컬렉션으로 설정한 다음, 요청을 보냅니다.

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

다음 예제에서는 encryptionKey 속성이 정의의 끝 부분에 있는 것을 포함하여 특정 동의어 맵 정의를 반환합니다.

$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

동일한 패턴을 사용하여 인덱서, 기술 세트, 데이터 원본 및 인덱스 별칭과 같은 다른 최상위 개체에 대해 encryptionKey 속성을 반환합니다.

다음 단계

키 사용을 모니터링할 수 있도록 Azure Key Vault에서 로깅 을 사용하도록 설정하는 것이 좋습니다.

Azure Key를 사용하거나 고객 관리형 암호화를 구성하는 방법에 대한 자세한 내용은 다음을 수행합니다.