Configure la rotación automática de claves en Azure Key Vault

Información general

La rotación automática de claves en Key Vault permite a los usuarios configurar Key Vault para generar automáticamente una nueva versión de clave con una frecuencia especificada. Para configurar la rotación, puede usar la directiva de rotación de claves, que se puede definir en cada clave individual.

La recomendación es girar las claves de cifrado al menos cada dos años para cumplir con los procedimientos recomendados criptográficos.

Para obtener más información sobre cómo se establecen las versiones de los objetos en Key Vault, consulte Objetos, identificadores y control de versiones de Key Vault.

Integración con servicios de Azure

Esta característica permite el giro de cero toque de un extremo a otro para el cifrado en reposo para los servicios de Azure con la clave administrada por el cliente (CMK) almacenada en Azure Key Vault. Consulte la documentación específica del servicio de Azure para ver si el servicio cubre el giro de un extremo a otro.

Para obtener más información sobre el cifrado de datos en Azure, consulte:

Precios

Hay un coste adicional por rotación de claves programada. Para más información, vea la página de precios de Azure Key Vault

Permisos necesarios

Para la característica de giro de claves de Key Vault se necesitan permisos de administración de claves. Puede asignar un rol de "Responsable de cifrado de Key Vault" para administrar la directiva de rotación y la rotación a petición.

Para obtener más información sobre cómo usar el modelo de permisos RBAC de Key Vault y asignar roles de Azure, consulte Uso de RBAC de Azure para controlar el acceso a claves, certificados y secretos

Nota:

Si usa un modelo de permisos de directivas de acceso, es necesario establecer los permisos de clave "Girar", "Establecer directiva de giro" y "Obtener directiva de giro" para administrar la directiva de giro en las claves.

Directiva de giro de claves

La directiva de rotación de claves permite a los usuarios configurar la rotación y las notificaciones de Event Grid a punto de expirar.

Configuración de directiva de giro de claves:

  • Hora de expiración: intervalo de expiración de clave. Se usa para establecer la fecha de expiración en la clave rotada recientemente. No afecta a una clave actual.
  • Habilitado/deshabilitado: marca para habilitar o deshabilitar el giro de la clave
  • Tipos de giro:
    • Renovación automática en un momento determinado después de la creación (predeterminado)
    • Renovación automática en un momento determinado antes de la expiración. Es necesario establecer "Hora de expiración" en la directiva de giro y "Fecha de expiración" en la clave.
  • Tiempo de rotación: intervalo de rotación de la clave. El valor mínimo es siete días desde la creación y siete días desde la fecha de expiración
  • Hora de notificación: clave cercana al intervalo del evento de expiración para la notificación de Event Grid. Es necesario establecer "Hora de expiración" en la directiva de giro y "Fecha de expiración" en la clave.

Importante

La rotación de claves genera una nueva versión de una clave existente con nuevo material de clave. Los servicios de destino deben usar el URI de clave sin versión para actualizar automáticamente a la versión más reciente de la clave. Asegúrese de que la solución de cifrado de datos guarda el URI de clave con datos con versión para apuntar al mismo material de clave para las operaciones de descifrado y desencapsulado (el mismo que se usó para el cifrado y encapsulado) para evitar interrupciones en los servicios. Actualmente, todos los servicios de Azure siguen ese patrón para el cifrado de datos.

Configuración de la directiva de giro

Configuración de la directiva de giro de claves

Configure la directiva de giro de claves durante la creación de claves.

Configure el giro durante la creación de claves

Configure la directiva de giro en las claves existentes.

Configure el giro en la clave existente

CLI de Azure

Guarde la directiva de giro de claves en un archivo. Ejemplo de directiva de giro de claves:

{
  "lifetimeActions": [
    {
      "trigger": {
        "timeAfterCreate": "P18M",
        "timeBeforeExpiry": null
      },
      "action": {
        "type": "Rotate"
      }
    },
    {
      "trigger": {
        "timeBeforeExpiry": "P30D"
      },
      "action": {
        "type": "Notify"
      }
    }
  ],
  "attributes": {
    "expiryTime": "P2Y"
  }
}

Establezca la directiva de rotación en una clave que pase el archivo guardado previamente mediante el comando az keyvault key rotation-policy update de la CLI de Azure.

az keyvault key rotation-policy update --vault-name <vault-name> --name <key-name> --value </path/to/policy.json>

Azure PowerShell

Establezca la directiva de rotación mediante el cmdlet Set-AzKeyVaultKeyRotationPolicy de Azure PowerShell.

Set-AzKeyVaultKeyRotationPolicy -VaultName <vault-name> -KeyName <key-name> -ExpiresIn (New-TimeSpan -Days 720) -KeyRotationLifetimeAction @{Action="Rotate";TimeAfterCreate= (New-TimeSpan -Days 540)}

Giro a petición

El giro de claves se puede invocar manualmente.

Portal

Haga clic en "Girar ahora" para invocar el giro.

Giro a petición

CLI de Azure

Use el comando az keyvault key rotate de la CLI de Azure para rotar la clave.

az keyvault key rotate --vault-name <vault-name> --name <key-name>

Azure PowerShell

Use el cmdlet Invoke-AzKeyVaultKeyRotation de Azure PowerShell.

Invoke-AzKeyVaultKeyRotation -VaultName <vault-name> -Name <key-name>

Configuración de la clave cerca de la notificación de expiración

Configuración de la notificación de expiración para la clave cercana al evento de expiración de Event Grid. En caso de que no se pueda usar la rotación automatizada, como cuando se importa una clave desde HSM local, puede configurar una notificación de expiración cercana como recordatorio para la rotación manual o como un desencadenador para la rotación automatizada personalizada a través de la integración con Event Grid. Puede configurar la notificación con días, meses y años antes de la expiración para que se desencadene un evento de expiración cercana.

Configurar notificación

Para obtener más información sobre las notificaciones de Event Grid en Key Vault, consulte Azure Key Vault como origen de Event Grid.

Configuración del giro de claves con plantilla de ARM

También se puede configurar la directiva de giro de claves mediante plantillas de ARM.

Nota:

Se necesita el rol "Colaborador del almacén de claves" en Key Vault configurado con RBAC de Azure para implementar la clave en el plano de administración.

{
    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "vaultName": {
            "type": "String",
            "metadata": {
                "description": "The name of the key vault to be created."
            }
        },
        "keyName": {
            "type": "String",
            "metadata": {
                "description": "The name of the key to be created."
            }
        },
        "rotatationTimeAfterCreate": {
            "defaultValue": "P18M",
            "type": "String",
            "metadata": {
                "description": "Time duration to trigger key rotation. i.e. P30D, P1M, P2Y"
            }
        },
        "expiryTime": {
            "defaultValue": "P2Y",
            "type": "String",
            "metadata": {
                "description": "The expiry time for new key version. i.e. P90D, P2M, P3Y"
            }
        },
        "notifyTime": {
            "defaultValue": "P30D",
            "type": "String",
            "metadata": {
                "description": "Near expiry Event Grid notification. i.e. P30D"
            }
        }

    },
    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults/keys",
            "apiVersion": "2021-06-01-preview",
            "name": "[concat(parameters('vaultName'), '/', parameters('keyName'))]",
            "location": "[resourceGroup().location]",
            "properties": {
                "vaultName": "[parameters('vaultName')]",
                "kty": "RSA",
                "rotationPolicy": {
                    "lifetimeActions": [
                        {
                            "trigger": {
                                "timeAfterCreate": "[parameters('rotatationTimeAfterCreate')]",
                                "timeBeforeExpiry": ""
                            },
                            "action": {
                                "type": "Rotate"
                            }
                        },
                        {
                            "trigger": {
                                "timeBeforeExpiry": "[parameters('notifyTime')]"
                            },
                            "action": {
                                "type": "Notify"
                            }
                        }

                    ],
                    "attributes": {
                        "expiryTime": "[parameters('expiryTime')]"
                    }
                }
            }
        }
    ]
}

Configuración de la gobernanza de directiva de giro de claves

Con el servicio Azure Policy, puede controlar el ciclo de vida de la clave y asegurarse de que todas las claves están configuradas para girar dentro de un número especificado de días.

Creación y asignación de una definición de directiva

  1. Vaya al recurso de la directiva.
  2. Seleccione Asignaciones en Creación en el lado izquierdo de la página de Azure Policy.
  3. Seleccione Asignar directiva en la parte superior de la página. Este botón abre la página de asignación de la directiva.
  4. Escriba la siguiente información:
  5. Rellene los campos adicionales. Navegue por las pestañas haciendo clic en los botones Anterior y Siguiente en la parte inferior de la página.
  6. Seleccionar Revisar y crear.
  7. Seleccione Crear

Una vez asignada la directiva integrada, puede tardar hasta 24 horas en completar el examen. Después de completar el examen, puede ver los resultados de cumplimiento tal como se muestra a continuación.

Captura de pantalla del cumplimiento de la directiva de rotación de claves.

Recursos