Criar e gerenciar o Banco de Dados do Azure para PostgreSQL - Servidor flexível com dados criptografados por chaves gerenciadas pelo cliente (CMK) usando a CLI do Azure
APLICA-SE A: Banco de Dados do Azure para PostgreSQL - Servidor Flexível
Nota
Os exemplos de CLI abaixo são baseados na versão 2.45.0 do Banco de Dados do Azure para bibliotecas CLI de servidor flexível PostgreSQL
Neste artigo, você aprenderá a criar e gerenciar o Banco de Dados do Azure para servidor flexível PostgreSQL com dados criptografados por chaves gerenciadas pelo cliente usando a CLI do Azure. Para saber mais sobre o recurso de chaves gerenciadas pelo cliente (CMK) com o Banco de Dados do Azure para servidor flexível PostgreSQL, consulte a visão geral.
Configurar a chave gerenciada pelo cliente durante a criação do servidor
Pré-requisitos:
- Você deve ter uma assinatura do Azure e ser um administrador nessa assinatura.
Siga as etapas abaixo para habilitar a CMK ao criar uma instância de servidor flexível do Banco de Dados do Azure para PostgreSQL usando a CLI do Azure.
- Crie um cofre de chaves e uma chave para usar para uma chave gerenciada pelo cliente. Habilite também a proteção contra limpeza e a exclusão suave no cofre de chaves.
az keyvault create -g <resource_group> -n <vault_name> --location <azure_region> --enable-purge-protection true
- No Cofre de Chaves do Azure criado, crie a chave que será usada para a criptografia de dados da instância flexível 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)
- Crie a Identidade Gerenciada que será usada para recuperar a chave do Cofre de Chaves do Azure.
identityPrincipalId=$(az identity create -g <resource_group> --name <identity_name> --location <azure_region> --query principalId -o tsv)
- Adicione a política de acesso com permissões de chave de wrapKey,unwrapKey, get, list no Azure KeyVault à 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
- Por fim, crie uma instância de 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 no Banco de Dados do Azure habilitado para CMK para instância de servidor flexível do PostgreSQL
Pré-requisitos:
- Você deve ter uma assinatura do Azure e ser um administrador nessa assinatura.
- Cofre da Chave com chave na região onde a instância de servidor flexível do Banco de Dados do Azure para PostgreSQL será criada. Siga este tutorial para criar o Cofre da Chave e gerar a chave.
Siga as etapas abaixo para alterar\girar chave ou identidade após a criação do servidor com criptografia de dados.
- Altere a chave/identidade para criptografia de dados para o servidor existente. Primeiro o obter novo identificador de chave:
newKeyIdentifier=$(az keyvault key show --vault-name <vault_name> --name <key_name> --query key.kid -o tsv)
- Atualize o servidor com nova chave e\ou identidade.
az postgres flexible-server update --resource-group <resource_group> --name <server_name> --key $newKeyIdentifier --identity <identity_name>