Aplicación de la extensión Key Vault VM en Azure Cloud Services (soporte extendido)

En este artículo se proporciona información básica sobre la extensión Azure Key Vault VM para Windows y se muestra cómo habilitarla en Azure Cloud Services.

¿Cuál es la extensión Key Vault VM?

La extensión de máquina virtual de Key Vault proporciona la actualización automática de certificados almacenados en un almacén de claves de Azure. En concreto, la extensión supervisa la lista de certificados observados almacenados en los almacenes de claves. Al detectar un cambio la extensión, recupera e instala los certificados correspondientes. Para más información, consulte Extensión Key Vault VM para Windows.

Novedades de la extensión Key Vault VM

La extensión Key Vault VM ahora se admite en la plataforma Azure Cloud Services (soporte extendido) para habilitar la administración de certificados de un extremo a otro. Ahora, la extensión puede extraer certificados de una instancia de Key Vault configurada en un intervalo de sondeo predefinido e instalarlos para que los use el servicio.

¿Cómo se usa la extensión Key Vault VM?

En el procedimiento siguiente se muestra cómo instalar la extensión Key Vault VM en Azure Cloud Services después de crear un certificado de arranque en el almacén para obtener un token de Azure Active Directory (Azure AD). Ese token ayudará en la autenticación de la extensión con el almacén. Una vez que se haya configurado el proceso de autenticación e instalado la extensión, los certificados más recientes se retirarán automáticamente a intervalos de sondeo normales.

Nota:

La extensión Key Vault VM descarga todos los certificados en el almacén de certificados de Windows o en la ubicación proporcionada por la propiedad certificateStoreLocation en la configuración de la extensión. Actualmente, dicha extensión concede acceso a la clave privada del certificado solo a la cuenta de administrador del sistema local.

Prerrequisitos

Para usar la extensión Azure Key Vault VM, es preciso tener un inquilino de Azure AD. Para más información, consulte Inicio rápido: configuración de un inquilino.

Habilitación de la extensión Azure Key Vault VM

  1. Genere un certificado en el almacén y descargue el archivo .cer para dicho certificado.

  2. Vaya a Registros de aplicaciones en Azure Portal.

    Captura de pantalla de los recursos disponibles en Azure Portal, incluidos los registros de aplicaciones.

  3. En la página Registros de aplicaciones, seleccione Nuevo registro.

    Captura de pantalla que muestra la página de registros de aplicaciones en Azure Portal.

  4. En la página siguiente rellene el formulario y complete la creación de la aplicación.

  5. Cargue el archivo .cer del certificado en el portal de aplicaciones de Azure AD.

    Opcionalmente, puede usar la característica de notificación de Azure Event Grid para Key Vault para cargar el certificado.

  6. Conceda a la aplicación de Azure Active Directory permisos de obtención de secretos de la aplicación de Key Vault:

    • Si usa la versión preliminar de control de acceso basado en roles (RBAC), busque el nombre de la aplicación de Azure AD que ha creado y asígnele el rol de Usuario de secretos de almacén de claves (versión preliminar).
    • Si usa directivas de acceso al almacén, asigne los permisos Secret-Get a la aplicación de Azure AD que ha creado. Para más información, consulte Asignación de directivas de acceso.
  7. Instale la extensión Key Vault VM mediante el fragmento de código de plantilla de Azure Resource Manager para el recurso cloudService:

    {
        "osProfile":
        {
            "secrets":
            [
                {
                    "sourceVault":
                    {
                        "id": "[parameters('sourceVaultValue')]"
                    },
                    "vaultCertificates":
                    [
                        {
                            "certificateUrl": "[parameters('bootstrpCertificateUrlValue')]"
                        }
                    ]
                }
            ]
        },
        "extensionProfile":
        {
            "extensions":
            [
                {
                    "name": "KVVMExtensionForPaaS",
                    "properties":
                    {
                        "type": "KeyVaultForPaaS",
                        "autoUpgradeMinorVersion": true,
                        "typeHandlerVersion": "1.0",
                        "publisher": "Microsoft.Azure.KeyVault",
                        "settings":
                        {
                            "secretsManagementSettings":
                            {
                                "pollingIntervalInS": "3600",
                                "certificateStoreName": "My",
                                "certificateStoreLocation": "LocalMachine",
                                "linkOnRenewal": false,
                                "requireInitialSync": false,
                                "observedCertificates": "[parameters('keyVaultObservedCertificates']"
                            },
                            "authenticationSettings":
                            {
                                "clientId": "Your AAD app ID",
                                "clientCertificateSubjectName": "Your boot strap certificate subject name [Do not include the 'CN=' in the subject name]"
                            }
                        }
                    }
                }
            ]
        }
    }
    

    Es posible que tenga que especificar el almacén de certificados para el certificado de arranque en ServiceDefinition.csdef:

        <Certificates>
                 <Certificate name="bootstrapcert" storeLocation="LocalMachine" storeName="My" />
        </Certificates> 
    

Pasos siguientes

Mejore la implementación mediante la habilitación de la supervisión en Azure Cloud Services (soporte extendido).