Compartir vía


Reubicación de Azure Key Vault en otra región

Hay varias razones por las que puede querer mover los recursos de Azure existentes de una región a otra. Quizá también desea:

  • Aproveche las ventajas de una nueva región de Azure.
  • Implemente características o servicios que solo están disponibles en regiones determinadas.
  • Cumpla requisitos internos de gobernanza y directivas.
  • Alineación con fusiones y adquisiciones de la empresa
  • Cumpla los requisitos de planeamiento de capacidad.

Azure Key Vault no admite la reubicación del almacén de claves en otra región.

En lugar de reubicar, debe:

  • Crear un nuevo almacén de claves con la reubicación de los servicios de Azure asociados.
  • Volver a generar las claves, secretos o certificados necesarios. En algunos casos, puede que tenga que transferir los secretos o certificados del almacén de claves existente al almacén de claves reubicado.

Diagrama que muestra el patrón de reubicación de Azure Key Vault

Requisitos previos

  • Compruebe que su suscripción de Azure permite crear almacenes de claves en la región de destino.

  • Cree un mapa de dependencias con todos los servicios de Azure usados por Key Vault. Para los servicios que están en el ámbito de la reubicación, debe elegir la estrategia de reubicación adecuada.

  • En función del diseño de Key Vault, es posible que tenga que implementar y configurar la red virtual en la región de destino.

  • Documente y planee volver a configurar en Key Vault en la región de destino:

    • Directivas de acceso y opciones de configuración de red.
    • Eliminación temporal y protección de purga.
    • Configuración de la asignación automática.

Tiempo de inactividad

Para comprender los posibles tiempos de inactividad, vea Cloud Adoption Framework para Azure: seleccione un método de reubicación.

Consideración sobre los puntos de conexión de servicio

Los puntos de conexión de servicio de red virtual para Azure Key Vault restringen el acceso a una red virtual especificada. También permiten restringir el acceso a una lista de intervalos de direcciones IPv4 (protocolo de Internet, versión 4). Se deniega el acceso a cualquier usuario que se conecte a Key Vault desde fuera de esos orígenes. Si los puntos de conexión de servicio se configuraron en la región de origen del recurso de Key Vault, tendría que hacerse lo mismo en el destino.

Para una recreación correcta de Key Vault en la región de destino, la red virtual y la subred deben crearse de antemano. En caso de que el traslado de estos dos recursos se realice con la herramienta Azure Resource Mover, los puntos de conexión de servicio no se configurarán automáticamente. Por lo tanto, deben configurarse manualmente. Puede hacerlo a través del Azure Portal, la CLI de Azure o Azure PowerShell.

Consideración del punto de conexión privado

Azure Private Link proporciona conectividad privada desde una red virtual a una plataforma como servicio (PaaS) de Azure, servicios de asociados de Microsoft o propiedad del cliente. Private Link simplifica la arquitectura de red y protege la conexión entre los puntos de conexión de Azure mediante la eliminación de la exposición de los datos a la red pública de Internet.

Para una recreación correcta de Key Vault en la región de destino, la red virtual y la subred deben crearse antes de que se produzca la recreación real.

Consideración sobre la integración de DNS de punto de conexión privado de Azure

Es importante definir correctamente la configuración de DNS para resolver la dirección IP del punto de conexión privado en el nombre de dominio completo (FQDN) de la cadena de conexión.

Es posible que los servicios de Microsoft Azure existentes ya tengan una configuración de DNS para un punto de conexión público. Esta configuración se debe invalidar para realizar la conexión mediante el punto de conexión privado.

La interfaz de red asociada al punto de conexión privado contiene la información para configurar DNS. La información de la interfaz de red incluye FQDN y direcciones IP privadas del recurso de vínculo privado.

Puede usar las siguientes opciones para establecer la configuración de DNS para los puntos de conexión privados:

  • Use el archivo de host (solo se recomienda con fines de pruebas). Puede usar el archivo de host en una máquina virtual para invalidar el DNS.
  • Use una zona DNS privada. Puede usar zonas DNS privadas para invalidar la resolución DNS de un punto de conexión privado. Una zona DNS privada se puede vincular a la red virtual para resolver dominios específicos.
  • Use el reenviador DNS (opcional). Puede usar el reenviador DNS para invalidar la resolución DNS de un recurso de vínculo privado. Cree una regla de reenvío de DNS para usar una zona DNS privada en el servidor DNS hospedado en una red virtual.

Preparación

Para exportar una plantilla mediante Azure Portal:

  1. Inicie sesión en Azure Portal.

  2. Seleccione Todos los recursos y, a continuación, seleccione el almacén de claves.

  3. Seleccione >Automation>Exportar plantilla.

  4. Elija Descargar en la hoja Exportar plantilla.

  5. Busque el archivo ZIP que descargó desde el portal y descomprímalo en la carpeta que prefiera.

    Este archivo ZIP contiene los archivos .json que componen la plantilla y los scripts para implementar la plantilla.

Tenga presente los conceptos siguientes:

  • Los nombres de los almacenes de claves son únicos globalmente. No se puede reutilizar un nombre de almacén.
  • Tiene que volver a configurar las directivas de acceso y la configuración de red en el nuevo almacén de claves.
  • Tiene que volver a configurar la protección de eliminación temporal y de purga en el nuevo almacén de claves.
  • La operación de copia de seguridad y restauración no conserva la configuración de la autorización. Es posible que tenga que volver a configurar las opciones.

Modificación de la plantilla

Modifique la plantilla al cambiar el nombre y la región del almacén de claves.

Para implementar la plantilla con Azure Portal:

  1. En Azure Portal, haga clic en Crear un recurso.

  2. En Buscar en Marketplace, escriba implementación de plantillas y, después, presione ENTRAR.

  3. Seleccione Implementación de plantillas.

  4. Seleccione Crear.

  5. Seleccione Cree su propia plantilla en el editor.

  6. Seleccione Cargar archivo y, después, siga las instrucciones para cargar el archivo template.json que descargó en la última sección.

  7. En el archivo template.json, establezca el valor predeterminado del nombre del almacén de claves para asignar un nombre al almacén de claves. En este ejemplo se establece el valor predeterminado del nombre del almacén de claves en mytargetaccount.

    "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
    "contentVersion": "1.0.0.0",
    "parameters": {
        "vaults_name": {
            "defaultValue": "key-vault-name",
            "type": "String"
        }
    },
    
  8. Edite la propiedad location del archivo template.json en la región de destino. En este ejemplo, la región de destino se establece en centralus.

    "resources": [
        {
            "type": "Microsoft.KeyVault/vaults",
            "apiVersion": "2023-07-01",
            "name": "[parameters('vaults_name')]",
            "location": "centralus",
            ...
        },
        ...
    ]
    

    Para obtener los códigos de ubicación de la región, consulte Ubicaciones de Azure. El código de una región es el nombre de la región sin espacios, Centro de EE. UU. = centralus.

  9. Quite los recursos del punto de conexión privado tipográfico en la plantilla.

    {
    "type": "Microsoft.KeyVault/vaults/privateEndpointConnections",
    ...
    }
    
  10. En caso de configurar un punto de conexión de servicio en el almacén de claves, en la sección networkAcl, en virtualNetworkRules, agregue la regla para la subred de destino. Asegúrese de que la marca ignoreMissingVnetServiceEndpoint está establecida en False, de modo que IaC no pueda implementar Key Vault en caso de que el punto de conexión de servicio no esté configurado en la región de destino.

    parameter.json

    {
      "$schema": "https://schema.management.azure.com/schemas/2015-01-01/deploymentParameters.json#",
      "contentVersion": "1.0.0.0",
      "parameters": {
        "target_vnet_externalid": {
          "value": "virtualnetwork-externalid"
        },
        "target_subnet_name": {
          "value": "subnet-name"
        }
      }
    }
    

    _template.json

        "networkAcls": {
            "bypass": "AzureServices",
            "defaultAction": "Deny",
            "ipRules": [],
            "virtualNetworkRules": [
                {
                    "id": "[concat(parameters('target_vnet_externalid'), concat('/subnets/', parameters('target_subnet_name')]",
                    "ignoreMissingVnetServiceEndpoint": false
                }
            ]
        }
    

Volver a implementar

Implemente la plantilla para crear un nuevo almacén de claves en la región de destino.

  1. Guarde el archivo template.json.

  2. Escriba o seleccione los valores de propiedad:

    • Suscripción: Seleccione una suscripción de Azure.

    • Grupo de recursos: Seleccione Crear nuevo y asígnele un nombre al grupo de recursos.

    • Ubicación: Seleccione una ubicación de Azure.

  3. Seleccione Acepto los términos y condiciones indicadas anteriormente y, después, seleccione Comprar.

  4. Las directivas de acceso y las opciones de configuración de red (puntos de conexión privados) deben volver a configurarse en el nuevo almacén de claves. La eliminación temporal y la protección de purga deben volver a configurarse en el nuevo almacén de claves y la configuración de autorización.

Sugerencia

Si recibe un error que indica que el XML especificado no es válido sintácticamente, compare el JSON de la plantilla con los esquemas descritos en la documentación de Azure Resource Manager.

Reimplementación con la migración de datos

Importante

Si planea mover una instancia de Key Vault entre regiones, pero dentro de la misma zona geográfica, se recomienda realizar una copia de seguridad y restauración para secretos, claves y certificados.

  1. Siga los pasos descritos en el enfoque de reimplementación.
  2. Para secretos:
    1. Copie y guarde el valor del secreto en el almacén de claves de origen.
    2. Vuelva a crear el secreto en el almacén de claves de destino y establezca el valor en secreto guardado.
  3. Para certificados:
    1. Exporte el certificado a un archivo .pfx.
    2. Importe el archivo PFX en el almacén de claves de destino. Si no puede exportar la clave privada (no se ha establecido exportable), debe generar un certificado nuevo e importarlo en el almacén de claves de destino.
  4. Con la reubicación del servicio de Azure asociado, se vuelven a generar las claves.
  5. Confirme que las claves se han generado para el servicio asociado.

Verify

Antes de eliminar el almacén de claves anterior, compruebe que el nuevo almacén contiene todas las claves, secretos y certificados necesarios después de la reubicación de los servicios de Azure asociados.