다음을 통해 공유


Azure CLI를 사용하여 CMK(고객 관리형 키)로 암호화된 데이터로 Azure Database for PostgreSQL - 유연한 서버를 만들고 관리합니다.

적용 대상: Azure Database for PostgreSQL - 유연한 서버

참고 항목

아래의 CLI 예는 Azure Database for PostgreSQL - 유연한 서버 CLI 라이브러리의 2.45.0 버전을 기반으로 합니다.

이 문서에서는 Azure CLI를 사용하여 고객 관리형 키로 암호화된 데이터로 Azure Database for PostgreSQL 유연한 서버를 만들고 관리하는 방법을 알아봅니다. Azure Database for PostgreSQL 유연한 서버의 CMK(고객 관리형 키) 기능에 대해 자세히 알아보려면 개요를 참조하세요.

서버 만들기 중 고객 관리형 키 설정

필수 조건:

  • Azure 구독 및 해당 구독에 대한 관리자 권한이 있어야 합니다.

Azure CLI를 사용하여 Azure Database for PostgreSQL 유연한 서버 인스턴스를 만드는 동안 CMK를 사용하도록 설정하려면 아래 단계를 따릅니다.

  1. 고객 관리형 키에 사용할 키 자격 증명 모음 및 키를 만듭니다. 또한 Key Vault에서 보호 제거 및 일시 삭제를 사용하도록 설정합니다.
     az keyvault create -g <resource_group> -n <vault_name> --location <azure_region> --enable-purge-protection true
  1. 만든 Azure Key Vault에서 Azure Database for PostgreSQL - 유연한 서버 인스턴스의 데이터 암호화에 사용할 키를 만듭니다.
     keyIdentifier=$(az keyvault key create --name <key_name> -p software --vault-name <vault_name> --query key.kid -o tsv)
  1. Azure Key Vault에서 키를 검색하는 데 사용할 관리 ID 만들기
 identityPrincipalId=$(az identity create -g <resource_group> --name <identity_name> --location <azure_region> --query principalId -o tsv)
  1. 위에서 만든 관리 ID에 Azure KeyVault의 wrapKey, unwrapKey, get, list 키 권한이 있는 액세스 정책을 추가합니다.
az keyvault set-policy -g <resource_group> -n <vault_name>  --object-id $identityPrincipalId --key-permissions wrapKey unwrapKey get list
  1. 마지막으로 CMK 기반 암호화를 사용하는 Azure Database for PostgreSQL - 유연한 서버 인스턴스를 만들어 보겠습니다.
az postgres flexible-server create -g <resource_group> -n <postgres_server_name> --location <azure_region>  --key $keyIdentifier --identity <identity_name>

CMK 지원 Azure Database for PostgreSQL 유연한 서버 인스턴스에서 고객 관리형 키 업데이트

필수 조건:

  • Azure 구독 및 해당 구독에 대한 관리자 권한이 있어야 합니다.
  • Azure Database for PostgreSQL 유연한 서버 인스턴스가 만들어질 지역에 키가 있는 Key Vault입니다. 이 자습서에 따라 Key Vault를 만들고 키를 만듭니다.

데이터 암호화를 사용하여 서버를 만든 후 키 또는 ID를 변경/회전하려면 아래 단계를 따릅니다.

  1. 기존 서버의 데이터 암호화를 위해 키/ID를 변경합니다. 먼저 새 키 식별자 가져옵니다.
 newKeyIdentifier=$(az keyvault key show --vault-name <vault_name> --name <key_name>  --query key.kid -o tsv)
  1. 새 키 및/또는 ID로 서버를 업데이트합니다.
  az postgres flexible-server update --resource-group <resource_group> --name <server_name> --key $newKeyIdentifier --identity <identity_name>