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

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

La extensión Key Vault VM proporciona una actualización automática de los certificados almacenados en Azure Key Vault. En concreto, la extensión supervisa una lista de certificados observados que se encuentran en almacenes de claves y, cuando detecta un cambio, 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 puedo aprovechar la extensión Key Vault VM?

En el siguiente tutorial se muestra cómo instalar la extensión Key Vault VM en los servicios PaaSV1 mediante la creación previa de un certificado de arranque en un almacén para obtener de AAD un token que le ayudará en la autenticación de la extensión con el almacén. Una vez que se haya configurado el proceso de autenticación y se haya instalado la extensión, los certificados más recientes se retirarán automáticamente a intervalos de sondeo normales.

Requisitos previos

Para usar la extensión Azure Key Vault VM, es preciso tener un inquilino de Azure Active Directory. Para más información sobre cómo configurar un nuevo inquilino de Active Directory, consulte el artículo sobre la configuración del inquilino de AAD

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. En Azure Portal, vaya a Registros de aplicaciones.

    Muestra la selección de un registro de aplicaciones en el portal.

  3. En la página Registros de aplicaciones, seleccione Nuevo registro en la esquina superior izquierda de la página

    Muestra Registros de aplicaciones en Azure Portal.

  4. En la página siguiente puede rellenar el formulario y completar la creación de la aplicación.

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

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

    • Si usa la versión preliminar de RBAC, busque el nombre de la aplicación de AAD 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 AAD que ha creado. Para más información, consulte Asignación de directivas de acceso.
  7. Instale la primera versión de los certificados creados en el primer paso y la extensión Key Vault VM mediante la plantilla de Azure Resource Manager, como se muestra a continuación:

        {
       "osProfile":{
          "secrets":[
             {
                "sourceVault":{
                   "id":"[parameters('sourceVaultValue')]"
                },
                "vaultCertificates":[
                   {
                      "certificateUrl":"[parameters('bootstrpCertificateUrlValue')]"
                   }
                ]
             }
          ]
       }{
          "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 como se indica a continuación:

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

Pasos siguientes

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