Creación y administración de servidor flexible de Azure Database for PostgreSQL con datos cifrados mediante claves administradas por el cliente (CMK) con la CLI de Azure
SE APLICA A: Azure Database for PostgreSQL con servidor flexible
Nota:
Los ejemplos de la CLI siguientes se basan en la versión 2.45.0 de las bibliotecas de la CLI de Azure Database for PostgreSQL: servidor flexible
En este artículo, descubrirá cómo crear y administrar el servidor flexible de Azure Database for PostgreSQL con datos cifrados mediante claves administradas por el cliente con la CLI de Azure. Para obtener más información sobre la característica de claves administradas por el cliente (CMK) con el servidor flexible de Azure Database for PostgreSQL, vea la información general.
Configuración de la clave administrada por el cliente durante la creación del servidor
Requisitos previos:
- Debe tener una suscripción de Azure y ser un administrador en esa suscripción.
Siga los pasos siguientes para habilitar CMK al crear una instancia de servidor flexible de Azure Database for PostgreSQL mediante la CLI de Azure.
- Cree un almacén de claves y una clave que se usará como clave administrada por el cliente. Habilite también la protección de purga y la eliminación temporal en el almacén de claves.
az keyvault create -g <resource_group> -n <vault_name> --location <azure_region> --enable-purge-protection true
- En la instancia de Azure Key Vault creada, cree la clave que se usará para el cifrado de datos de la instancia de servidor flexible de Azure Database for PostgreSQL.
keyIdentifier=$(az keyvault key create --name <key_name> -p software --vault-name <vault_name> --query key.kid -o tsv)
- Creación de una identidad administrada que se usará para recuperar la clave de Azure Key Vault.
identityPrincipalId=$(az identity create -g <resource_group> --name <identity_name> --location <azure_region> --query principalId -o tsv)
- Agregue una directiva de acceso con los permisos de claves wrapKey, unwrapKey, get, list en Azure KeyVault a la identidad administrada que se ha creado anteriormente.
az keyvault set-policy -g <resource_group> -n <vault_name> --object-id $identityPrincipalId --key-permissions wrapKey unwrapKey get list
- Por último, cree una instancia de servidor flexible de Azure Database for PostgreSQL con el cifrado basado en CMK habilitado.
az postgres flexible-server create -g <resource_group> -n <postgres_server_name> --location <azure_region> --key $keyIdentifier --identity <identity_name>
Actualización de la clave administrada por el cliente en la instancia de servidor flexible de Azure Database for PostgreSQL habilitada para CMK
Requisitos previos:
- Debe tener una suscripción de Azure y ser un administrador en esa suscripción.
- Key Vault con clave en la región donde se creará la instancia de servidor flexible de Azure Database for PostgreSQL. Siga este tutorial para crear una instancia de Key Vault y generar una clave.
Siga los pasos que se indican a continuación para cambiar/rotar la clave o la identidad después de crear el servidor con cifrado de datos.
- Cambie la clave o la identidad para el cifrado de datos para el servidor existente. En primer lugar, obtenga el nuevo identificador de clave:
newKeyIdentifier=$(az keyvault key show --vault-name <vault_name> --name <key_name> --query key.kid -o tsv)
- Actualizar el servidor con la nueva clave o identidad.
az postgres flexible-server update --resource-group <resource_group> --name <server_name> --key $newKeyIdentifier --identity <identity_name>