Compartilhar via


Criar e gerenciar um Banco de Dados do Azure para PostgreSQL – Servidor Flexível com os dados criptografados por CMK (chaves gerenciadas pelo cliente) usando a CLI do Azure

APLICA-SE A: Banco de dados do Azure para PostgreSQL - Servidor Flexível

Observação

Os exemplos da CLI abaixo se baseiam na versão 2.45.0 das bibliotecas da CLI do Banco de Dados do Azure para PostgreSQL – Servidor Flexível

Neste artigo, você aprenderá a criar e gerenciar um Banco de Dados do Azure para PostgreSQL – Servidor Flexível com os dados criptografados por chaves gerenciadas pelo cliente usando a CLI do Azure. Para saber mais sobre o recurso CMK (chaves gerenciadas pelo cliente) com o servidor flexível do Banco de Dados do Azure para PostgreSQL, confira a visão geral.

Configurar a chave gerenciada pelo cliente durante a criação do servidor

Pré-requisitos:

  • É necessário ter uma assinatura do Azure e ser um administrador nessa assinatura.

Siga as etapas abaixo para habilitar o CMK ao criar uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL usando a CLI do Azure.

  1. Crie um cofre de chaves e uma chave para usar em uma chave gerenciada pelo cliente. Habilite também a proteção de limpeza e a exclusão temporária no cofre de chaves.
     az keyvault create -g <resource_group> -n <vault_name> --location <azure_region> --enable-purge-protection true
  1. No Azure Key Vault criado, crie a chave que será usada para a criptografia de dados da instância do servidor flexível do Banco de Dados do Azure para PostgreSQL.
     keyIdentifier=$(az keyvault key create --name <key_name> -p software --vault-name <vault_name> --query key.kid -o tsv)
  1. Crie uma identidade gerenciada que será usada para recuperar a chave do Azure Key Vault.
 identityPrincipalId=$(az identity create -g <resource_group> --name <identity_name> --location <azure_region> --query principalId -o tsv)
  1. Adicione uma política de acesso com as permissões de chave wrapKey, unwrapKey, get e list no Azure Key Vault à identidade gerenciada que você criou acima.
az keyvault set-policy -g <resource_group> -n <vault_name>  --object-id $identityPrincipalId --key-permissions wrapKey unwrapKey get list
  1. Por fim, vamos criar uma instância do servidor flexível do Banco de Dados do Azure para PostgreSQL com a criptografia baseada em CMK habilitada.
az postgres flexible-server create -g <resource_group> -n <postgres_server_name> --location <azure_region>  --key $keyIdentifier --identity <identity_name>

Atualizar a chave gerenciada pelo cliente na instância de servidor flexível do Banco de Dados do Azure para PostgreSQL habilitada para CMK

Pré-requisitos:

  • É necessário ter uma assinatura do Azure e ser um administrador nessa assinatura.
  • Key Vault com chave na região em que a instância de servidor flexível do Banco de Dados do Azure para PostgreSQL será criada. Siga este tutorial para criar o Key Vault e gerar a chave.

Siga as etapas abaixo para alterar/girar a chave ou a identidade após a criação do servidor com a criptografia de dados.

  1. Altere a chave/identidade para criptografia de dados para o servidor existente. Primeiro, obtenha o novo identificador de chave:
 newKeyIdentifier=$(az keyvault key show --vault-name <vault_name> --name <key_name>  --query key.kid -o tsv)
  1. Atualize o servidor com a nova chave e/ou identidade.
  az postgres flexible-server update --resource-group <resource_group> --name <server_name> --key $newKeyIdentifier --identity <identity_name>

Próximas etapas