Terminazione SSL con certificati Key VaultSSL termination with Key Vault certificates

Azure Key Vault è un archivio segreto gestito dalla piattaforma che è possibile usare per proteggere i segreti, le chiavi e i certificati SSL.Azure Key Vault is a platform-managed secret store that you can use to safeguard secrets, keys, and SSL certificates. Applicazione Azure gateway supporta l'integrazione con Key Vault per i certificati del server collegati ai listener abilitati per HTTPS.Azure Application Gateway supports integration with Key Vault for server certificates that are attached to HTTPS-enabled listeners. Questo supporto è limitato allo SKU V2 del gateway applicazione.This support is limited to the v2 SKU of Application Gateway.

L'integrazione di Key Vault offre due modelli per la terminazione SSL:Key Vault integration offers two models for SSL termination:

  • È possibile specificare in modo esplicito i certificati SSL collegati al listener.You can explicitly provide SSL certificates attached to the listener. Questo modello rappresenta il modo tradizionale per passare i certificati SSL al gateway applicazione per la terminazione SSL.This model is the traditional way to pass SSL certificates to Application Gateway for SSL termination.
  • È possibile specificare facoltativamente un riferimento a un certificato o un segreto Key Vault esistente quando si crea un listener abilitato per HTTPS.You can optionally provide a reference to an existing Key Vault certificate or secret when you create an HTTPS-enabled listener.

L'integrazione del gateway applicazione con Key Vault offre molti vantaggi, tra cui:Application Gateway integration with Key Vault offers many benefits, including:

  • Maggiore sicurezza, perché i certificati SSL non sono gestiti direttamente dal team di sviluppo di applicazioni.Stronger security, because SSL certificates aren't directly handled by the application development team. L'integrazione consente a un team di sicurezza separato di:Integration allows a separate security team to:
    • Configurare i gateway applicazione.Set up application gateways.
    • Controllare i cicli di vita del gateway applicazione.Control application gateway lifecycles.
    • Concedere le autorizzazioni ai gateway applicazione selezionati per accedere ai certificati archiviati nell'insieme di credenziali delle chiavi.Grant permissions to selected application gateways to access certificates that are stored in your key vault.
  • Supporto per l'importazione di certificati esistenti nell'insieme di credenziali delle chiavi.Support for importing existing certificates into your key vault. In alternativa, è possibile usare Key Vault API per creare e gestire nuovi certificati con i partner Key Vault attendibili.Or use Key Vault APIs to create and manage new certificates with any of the trusted Key Vault partners.
  • Supporto per il rinnovo automatico dei certificati archiviati nell'insieme di credenziali delle chiavi.Support for automatic renewal of certificates that are stored in your key vault.

Il gateway applicazione supporta attualmente solo certificati convalidati per il software.Application Gateway currently supports software-validated certificates only. Modulo di protezione hardware (HSM): i certificati convalidati non sono supportati.Hardware security module (HSM)-validated certificates are not supported. Dopo la configurazione del gateway applicazione per l'uso di certificati Key Vault, le relative istanze recuperano il certificato da Key Vault e le installano localmente per la terminazione SSL.After Application Gateway is configured to use Key Vault certificates, its instances retrieve the certificate from Key Vault and install them locally for SSL termination. Anche le istanze eseguono il polling Key Vault a intervalli di 24 ore per recuperare una versione rinnovata del certificato, se esistente.The instances also poll Key Vault at 24-hour intervals to retrieve a renewed version of the certificate, if it exists. Se viene trovato un certificato aggiornato, il certificato SSL attualmente associato al listener HTTPS viene ruotato automaticamente.If an updated certificate is found, the SSL certificate currently associated with the HTTPS listener is automatically rotated.

Nota

Il portale di Azure supporta solo certificati dell'insieme di credenziali delle chiavi, non segreti.The Azure portal only supports KeyVault Certificates, not secrets. Il gateway applicazione supporta ancora i segreti di riferimento da un insieme di credenziali delle chiavi, ma solo tramite risorse non del portale come PowerShell, CLI, API, modelli ARM e così via.Application Gateway still supports referencing secrets from KeyVault, but only through non-Portal resources like PowerShell, CLI, API, ARM templates, etc.

Funzionamento dell'integrazioneHow integration works

L'integrazione del gateway applicazione con Key Vault richiede un processo di configurazione in tre passaggi:Application Gateway integration with Key Vault requires a three-step configuration process:

  1. Creare un'identità gestita assegnata dall'utenteCreate a user-assigned managed identity

    Si crea o si riutilizza un'identità gestita assegnata dall'utente esistente, che il gateway applicazione usa per recuperare i certificati da Key Vault per conto dell'utente.You create or reuse an existing user-assigned managed identity, which Application Gateway uses to retrieve certificates from Key Vault on your behalf. Per altre informazioni, vedere Informazioni sulle identità gestite per le risorse di Azure.For more information, see What is managed identities for Azure resources?. Questo passaggio consente di creare una nuova identità nel tenant Azure Active Directory.This step creates a new identity in the Azure Active Directory tenant. L'identità è considerata attendibile dalla sottoscrizione usata per creare l'identità.The identity is trusted by the subscription that's used to create the identity.

  2. Configurare l'insieme di credenziali delle chiaviConfigure your key vault

    È quindi possibile importare un certificato esistente o crearne uno nuovo nell'insieme di credenziali delle chiavi.You then either import an existing certificate or create a new one in your key vault. Il certificato verrà usato dalle applicazioni che vengono eseguite tramite il gateway applicazione.The certificate will be used by applications that run through the application gateway. In questo passaggio, è anche possibile usare un segreto dell'insieme di credenziali delle chiavi archiviato come file PFX codificato in base 64 senza password.In this step, you can also use a key vault secret that's stored as a password-less, base 64-encoded PFX file. È consigliabile usare un tipo di certificato a causa della funzionalità di rinnovo automatico disponibile con gli oggetti tipo di certificato nell'insieme di credenziali delle chiavi.We recommend using a certificate type because of the autorenewal capability that's available with certificate type objects in the key vault. Dopo aver creato un certificato o un segreto, è necessario definire i criteri di accesso nell'insieme di credenziali delle chiavi per consentire all'identità di concedere l'accesso al segreto.After you've created a certificate or a secret, you define access policies in the key vault to allow the identity to be granted get access to the secret.

  3. Configurare il gateway applicazioneConfigure the application gateway

    Dopo aver completato i due passaggi precedenti, è possibile impostare o modificare un gateway applicazione esistente per usare l'identità gestita assegnata dall'utente.After you complete the two preceding steps, you can set up or modify an existing application gateway to use the user-assigned managed identity. È anche possibile configurare il certificato SSL del listener HTTP in modo che punti all'URI completo del certificato Key Vault o dell'ID segreto.You can also configure the HTTP listener’s SSL certificate to point to the complete URI of the Key Vault certificate or secret ID.

    Certificati di Key Vault

Passaggi successiviNext steps

Configurare la terminazione SSL con Key Vault certificati utilizzando Azure PowerShellConfigure SSL termination with Key Vault certificates by using Azure PowerShell