Condividi tramite


Aggiungi e gestisci certificati TLS/SSL nel Servizio app di Azure

Nota

A partire dal 1° giugno 2024, tutte le app del Servizio app di Azure appena create offriranno la possibilità di generare un nome host predefinito univoco usando la convenzione di denominazione <app-name>-<random-hash>.<region>.azurewebsites.net. I nomi delle app esistenti rimarranno invariati.

Esempio: myapp-ds27dh7271aah175.westus-01.azurewebsites.net

Per altri dettagli, vedere Nome host predefinito univoco per la risorsa Servizio app.

È possibile aggiungere certificati di sicurezza digitale da usare nel codice dell'applicazione o per proteggere nomi DNS personalizzati nel Servizio app di Azure, che offre un servizio di hosting Web a scalabilità elevata e con applicazione automatica di patch. Attualmente denominati certificati TLS (Transport Layer Security), e precedentemente noti anche come certificati SSL (Secure Socket Layer), questi certificati privati o pubblici consentono di proteggere le connessioni Internet crittografando i dati inviati tra il browser, i siti Web visitati e il server dei siti Web.

La tabella seguente elenca le opzioni disponibili per aggiungere certificati nel servizio app:

Opzione Descrizione
Creazione di un certificato gestito dal servizio app gratuito Un certificato privato gratuito e facile da usare se occorre semplicemente proteggere il dominio personalizzato nel servizio app.
Importare un certificato del servizio app Certificato privato gestito da Azure. Questa opzione combina la semplicità della gestione automatizzata dei certificati e la flessibilità delle opzioni di rinnovo e di esportazione.
Importazione di un certificato da Key Vault Utile se si usa Azure Key Vault per gestire i certificati PKCS12. Vedere Requisiti dei certificati privati.
Caricamento di un certificato privato Se si ha già un certificato privato rilasciato da un provider di terze parti, è possibile caricarlo. Vedere Requisiti dei certificati privati.
Caricamento di un certificato pubblico I certificati pubblici non vengono usati per proteggere i domini personalizzati, ma è possibile caricarli nel codice se sono necessari per accedere a risorse remote.

Prerequisiti

Requisiti dei certificati privati

Il certificato gestito dal servizio app gratuito o il certificato del servizio app soddisfano già i requisiti del servizio. Se si sceglie di caricare o importare un certificato privato nel servizio app, il certificato deve soddisfare i requisiti seguenti:

  • Deve essere esportato come file PFX protetto tramite password, crittografato con Triple DES.
  • Contenere una chiave privata di almeno 2048 bit
  • Deve contenere tutti i certificati intermedi e il certificato radice nella catena di certificati.

Per proteggere un dominio personalizzato in un'associazione TLS, il certificato presenta requisiti aggiuntivi:

  • Contiene un'estensione di utilizzo chiavi avanzato per l'autenticazione server (OID = 1.3.6.1.5.5.7.3.1)
  • Essere firmato da un'autorità di certificazione attendibile

Nota

Sebbene non siano descritti in questo articolo, i certificati di crittografia a curva ellittica (ECC) possono essere usati con il servizio app. Per informazioni sulla procedura per creare i certificati ECC, rivolgersi all'autorità di certificazione.

Nota

Dopo aver aggiunto un certificato privato a un'app, il certificato viene archiviato in un'unità di distribuzione associata alla combinazione di gruppo di risorse, area e sistema operativo del piano di servizio app, denominata internamente spazio Web. In questo modo il certificato è accessibile ad altre app nella stessa combinazione di gruppo di risorse, area e sistema operativo. I certificati privati caricati o importati nel servizio app vengono condivisi con i servizi app nella stessa unità di distribuzione.

È possibile aggiungere fino a 1.000 certificati privati per ogni spazio Web.

Creare un certificato gestito gratuito

Il certificato gratuito gestito dal servizio app è una soluzione rapida ed efficace per proteggere il proprio nome DNS personalizzato nel servizio app. Senza alcun intervento da parte dell'utente, questo certificato server TLS/SSL è completamente gestito dal servizio app e viene rinnovato automaticamente in incrementi di sei mesi, 45 giorni prima della scadenza, purché i prerequisiti configurati rimangano invariati. Tutte le associazioni vengono aggiornate con il certificato rinnovato. Creare e associare il certificato a un dominio personalizzato e consentire al servizio app di gestire tutte le altre operazioni.

Importante

Prima di creare un certificato gestito gratuito, assicurarsi di avere soddisfatto i prerequisiti per l'app.

I certificati gratuiti vengono emessi da DigiCert. Per alcuni domini, è necessario consentire in modo esplicito DigiCert come autorità di certificazione creando un record di dominio CAA con il valore: 0 issue digicert.com.

Azure gestisce completamente i certificati per conto dell'utente, in modo che qualsiasi aspetto del certificato gestito, compresa l'autorità di certificazione radice, possa cambiare in qualsiasi momento. Queste modifiche sono esterne al controllo. Assicurarsi di evitare dipendenze rigide e certificati di procedura di associazione al certificato gestito o a qualsiasi parte della gerarchia di certificati. Se occorre il comportamento di associazione del certificato, aggiungere un certificato al dominio personalizzato usando qualsiasi altro metodo disponibile in questo articolo.

Il certificato gratuito presenta le limitazioni seguenti:

  • Non supporta i certificati con caratteri jolly.
  • Non supporta l'utilizzo come certificato client usando l'identificazione personale del certificato. Questa funzionalità è pianificata per la deprecazione e la rimozione.
  • Non supporta il DNS privato.
  • Non è esportabile.
  • Non è supportato in un ambiente del servizio app.
  • Supporta solo caratteri alfanumerici, trattini (-) e punti (.).
  • Sono supportati solo domini personalizzati di lunghezza fino a 64 caratteri.
  • Deve avere un record A che punta all'indirizzo IP dell'app Web.
  • Non è supportato nelle app che non sono accessibili pubblicamente.
  • Non è supportato con i domini radice integrati con Gestione traffico.
  • Deve soddisfare tutti i requisiti precedenti per il corretto rilascio e rinnovo dei certificati.
  1. Nel menu a sinistra del portale di Azure scegliere Servizi app><nome app>.

  2. Nel menu di spostamento dell'app selezionare Certificati. Nel riquadro Certificati gestiti selezionare Aggiungi certificato.

    Screenshot del menu dell'app con le opzioni 'Certificati', 'Certificati gestiti' e 'Aggiungi certificato' selezionate.

  3. Selezionare il dominio personalizzato per il certificato gratuito e quindi selezionare Convalida. Al termine della convalida selezionare Aggiungi. È possibile creare un solo certificato gestito per ogni dominio personalizzato supportato.

    Al termine dell'operazione, il certificato viene visualizzato nell'elenco Certificati gestiti.

    Screenshot del riquadro 'Certificati gestiti' con il certificato appena creato elencato.

  4. Per proteggere un dominio personalizzato con questo certificato, è necessario anche creare un'associazione del certificato. Seguire la procedura descritta in Proteggere un nome DNS personalizzato con un'associazione TLS/SSL nel Servizio app di Azure.

Importare un certificato del servizio app

Per importare un certificato del servizio app, prima di tutto acquistare e configurare un certificato del servizio app, quindi seguire questa procedura.

  1. Nel menu a sinistra del portale di Azure scegliere Servizi app><nome app>.

  2. Dal menu di spostamento dell'app selezionare Certificati>Bring Your Own Certificate (.pfx)>Aggiungi certificato.

  3. In Origine selezionare Importa il certificato del servizio app.

  4. In Certificato del servizio app selezionare il certificato appena creato.

  5. In Nome descrittivo del certificato assegnare un nome al certificato nell'app.

  6. Selezionare Convalida. Se la convalida ha esito positivo, selezionare Aggiungi.

    Screenshot della pagina di gestione app con le opzioni 'Certificati', 'Bring Your Own Certificate (.pfx)' e 'Importa il certificato del servizio app' selezionate e la pagina 'Aggiungi certificato a chiave privata' con il pulsante **Convalida**.

    Al termine dell'operazione, il certificato viene visualizzato nell'elenco Bring Your Own Certificate.

    Screenshot del riquadro 'Bring Your Own Certificate (.pfx)' con il certificato acquistato elencato.

  7. Per proteggere un dominio personalizzato con questo certificato, è necessario anche creare un'associazione del certificato. Seguire la procedura descritta in Proteggere un nome DNS personalizzato con un'associazione TLS/SSL nel Servizio app di Azure.

Importazione di un certificato da Key Vault

Se si usa Azure Key Vault per gestire i certificati, è possibile importare un certificato PKCS12 da Key Vault nel servizio app, purché siano soddisfatti i requisiti.

Autorizzare il servizio app per la lettura dall'insieme di credenziali

Per impostazione predefinita, il provider di risorse Servizio app non ha accesso all'insieme di credenziali delle chiavi. Per poter usare un insieme di credenziali delle chiavi per la distribuzione di un certificato, è necessario autorizzare l'accesso in lettura all'insieme di credenziali delle chiavi per il provider di risorse.

Nota

Attualmente, il portale di Azure non consente di configurare un certificato del servizio app in Key Vault per l'uso del modello di controllo degli accessi in base al ruolo. È tuttavia possibile usare l'interfaccia della riga di comando di Azure, Azure PowerShell o la distribuzione di un modello di ARM per eseguire questa configurazione. Per ulteriori informazioni, vedere Fornire l'accesso a chiavi, certificati e segreti di Key Vault con un controllo degli accessi in base al ruolo di Azure.

Provider di risorse ID app dell'entità servizio Autorizzazioni di accesso al segreto dell'insieme di credenziali delle chiavi Autorizzazioni per i certificati dell'insieme di credenziali delle chiavi Autorizzazioni di controllo degli accessi in base al ruolo dell'insieme di credenziali delle chiavi
Servizio app di Microsoft Azure o Microsoft.Azure.WebSites - abfa0a7c-a6b6-4736-8310-5855508787cd, che è lo stesso per tutte le sottoscrizioni di Azure

- Per l'ambiente cloud di Azure per enti pubblici, usare 6a02c803-dafd-4136-b4c3-5a6f318b4714.
Recupero Recupero Utente del certificato
Microsoft.Azure.CertificateRegistration Recupero
List
Set
Elimina
Recupero
List

Importare un certificato nell'app dall'insieme di credenziali

  1. Nel menu a sinistra del portale di Azure scegliere Servizi app><nome app>.

  2. Dal menu di spostamento dell'app selezionare Certificati>Bring Your Own Certificate (.pfx)>Aggiungi certificato.

  3. In Origine selezionare Importa da Key Vault.

  4. Selezionare Seleziona certificato di Key Vault.

    Screenshot della pagina di gestione app con le opzioni 'Certificati', 'Bring Your Own Certificate (.pfx)' e 'Importa da Key Vault' selezionate

  5. La tabella seguente contiene informazioni utili per facilitare la selezione del certificato:

    Impostazione Descrizione
    Abbonamento Sottoscrizione associata all'insieme di credenziali delle chiavi.
    Key vault Insieme di credenziali delle chiavi con il certificato da importare.
    Certificate In questo elenco selezionare un certificato PKCS12 presente nell'insieme di credenziali. Tutti i certificati PKCS12 nell'insieme di credenziali sono elencati con le relative identificazioni, ma non tutti sono supportati nel servizio app.
  6. Al termine della selezione, selezionare Seleziona, Convalida e quindi Aggiungi.

    Al termine dell'operazione, il certificato viene visualizzato nell'elenco Bring Your Own Certificate. Se l'importazione non riesce e viene restituito un errore, significa che il certificato non soddisfa i requisiti per il servizio app.

    Screenshot del riquadro 'Bring Your Own Certificate (.pfx)' con il certificato importato elencato.

    Nota

    Se si aggiorna il certificato in Key Vault con un nuovo certificato, il servizio app sincronizza automaticamente il certificato entro 24 ore.

  7. Per proteggere un dominio personalizzato con questo certificato, è necessario anche creare un'associazione del certificato. Seguire la procedura descritta in Proteggere un nome DNS personalizzato con un'associazione TLS/SSL nel Servizio app di Azure.

Caricamento di un certificato privato

Dopo aver ottenuto un certificato dal provider di certificati, seguire i passaggi descritti in questa sezione per prepararlo per il Servizio app.

Unire i certificati intermedi

Se l'autorità di certificazione offre più certificati nella catena di certificati, è necessario unire i certificati nello stesso ordine.

  1. Aprire ogni certificato ricevuto in un editor di testo.

  2. Per archiviare il certificato unito, creare un file denominato mergedcertificate.crt.

  3. Copiare il contenuto di ogni certificato in questo file. Assicurarsi di seguire la sequenza di certificati specificata dalla catena di certificati, iniziando con il certificato e terminando con il certificato radice, ad esempio:

    -----BEGIN CERTIFICATE-----
    <your entire Base64 encoded SSL certificate>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 1>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded intermediate certificate 2>
    -----END CERTIFICATE-----
    
    -----BEGIN CERTIFICATE-----
    <The entire Base64 encoded root certificate>
    -----END CERTIFICATE-----
    

Esportare un certificato privato unito in un file PFX

A questo punto, esportare il certificato TLS/SSL unito con la chiave privata usata per generare la richiesta del certificato. Se la richiesta del certificato è stata generata usando OpenSSL, è stato creato un file di chiave privata.

Nota

In OpenSSL v3 la crittografia predefinita 3DES è stata sostituita con la crittografia AES256, ma è possibile eseguirne l'override nella riga di comando -keypbe PBE-SHA1-3DES -certpbe PBE-SHA1-3DES -macalg SHA1. OpenSSL v1 usa 3DES come impostazione predefinita, quindi i file PFX generati sono supportati senza modifiche speciali.

  1. Per esportare il certificato in un file PFX, eseguire il comando seguente ma sostituire i segnaposto <private-key-file> e <merged-certificate-file> con i percorsi della chiave privata e del file di certificato unito.

    openssl pkcs12 -export -out myserver.pfx -inkey <private-key-file> -in <merged-certificate-file>  
    
  2. Quando richiesto, specificare una password per l'operazione di esportazione. Quando si caricherà il certificato TLS/SSL nel servizio app più avanti, sarà necessario specificare questa password.

  3. Se è stato usato IIS o Certreq.exe per generare la richiesta di certificato, installare il certificato nel computer locale e quindi esportarlo in un file PFX.

Caricare il certificato nel servizio app

A questo punto si è pronti per caricare il certificato nel Servizio app.

  1. Nel menu a sinistra del portale di Azure scegliere Servizi app><nome app>.

  2. Dal menu di spostamento dell'app selezionare Certificati>Bring Your Own Certificate (.pfx)>Carica certificato.

    Screenshot che mostra le opzioni 'Certificati', 'Bring Your Own Certificate (.pfx)', 'Carica certificato' selezionate.

  3. La tabella seguente contiene informazioni utili per facilitare il caricamento del certificato PFX:

    Impostazione Descrizione
    File di certificato PFX Selezionare il file PFX.
    Password certificato Immettere la password creata durante l'esportazione del file PFX.
    Nome descrittivo del certificato Nome del certificato che verrà visualizzato nell'app Web.
  4. Al termine della selezione, selezionare Seleziona, Convalida e quindi Aggiungi.

    Al termine dell'operazione, il certificato viene visualizzato nell'elenco Bring Your Own Certificate.

    Screenshot del riquadro 'Bring Your Own Certificate (.pfx)' con il certificato caricato elencato.

  5. Per proteggere un dominio personalizzato con questo certificato, è necessario anche creare un'associazione del certificato. Seguire la procedura descritta in Proteggere un nome DNS personalizzato con un'associazione TLS/SSL nel Servizio app di Azure.

Caricamento di un certificato pubblico

I certificati pubblici sono supportati nel formato .cer.

Nota

Dopo aver caricato un certificato pubblico in un'app, è accessibile solo dall'app in cui viene caricato. I certificati pubblici devono essere caricati in ogni singola app Web che necessita dell'accesso. Per scenari specifici dell'ambiente del servizio app, vedere la documentazione relativa ai certificati e all'ambiente del servizio app

È possibile caricare fino a 1.000 certificati pubblici per piano di servizio app.

  1. Nel menu a sinistra del portale di Azure scegliere Servizi app><nome app>.

  2. Dal menu di spostamento dell'app selezionare Certificati>Certificati a chiave pubblica (.cer)>Aggiungi certificato.

  3. La tabella seguente contiene informazioni utili per facilitare il caricamento del certificato CER:

    Impostazione Descrizione
    File di certificato CER Selezionare il file CER.
    Nome descrittivo del certificato Nome del certificato che verrà visualizzato nell'app Web.
  4. Al termine, selezionare Aggiungi.

    Screenshot del nome e del certificato a chiave pubblica da caricare.

  5. Dopo aver caricato il certificato, copiare l'identificazione personale del certificato e vedere Rendere accessibile il certificato.

Rinnovare un certificato in scadenza

Prima della scadenza di un certificato, assicurarsi di aggiungere il certificato rinnovato al servizio app e aggiornare le associazioni del certificato in cui il processo dipende dal tipo di certificato. Ad esempio, un certificato importato da Key Vault, incluso un certificato del servizio app, sincronizza automaticamente il servizio app ogni 24 ore e aggiorna l'associazione TLS/SSL quando si rinnova il certificato. Per un certificato caricato, non è disponibile alcun aggiornamento automatico dell'associazione. In base allo scenario, esaminare la sezione corrispondente:

Rinnovare un certificato caricato

Quando si sostituisce un certificato in scadenza, il modo in cui si aggiorna l'associazione del certificato con il nuovo certificato potrebbe influire negativamente sull'esperienza utente. Ad esempo, l'indirizzo IP in ingresso può cambiare quando si elimina un'associazione, anche se tale associazione è basata su IP. Questo aspetto è particolarmente importante quando si rinnova un certificato che si trova già in un'associazione basata su IP. Per evitare che l'indirizzo IP dell'app cambi e per evitare tempi di inattività dell'app a causa di errori HTTPS, seguire questa procedura nella sequenza specificata:

  1. Caricare il nuovo certificato.

  2. Passare alla pagina Domini personalizzati per l'app, selezionare il pulsante azioni ... e selezionare Aggiorna associazione.

  3. Selezionare il nuovo certificato e selezionare Aggiorna.

  4. Eliminare il certificato esistente.

Rinnovare un certificato importato da Key Vault

Nota

Per rinnovare un certificato del servizio app, vedere Rinnovare un certificato del servizio app.

Per rinnovare un certificato importato nel servizio app da Key Vault, vedere Rinnovare il certificato di Azure Key Vault.

Dopo il rinnovo del certificato all'interno dell'insieme di credenziali delle chiavi, il servizio app sincronizza automaticamente il nuovo certificato e aggiorna qualsiasi associazione del certificato applicabile entro 24 ore. Per eseguire la sincronizzazione manualmente, seguire questa procedura:

  1. Passare alla paginaCertificato dell'app.

  2. In Bring Your Own Certificate (.pfx) selezionare il pulsante dettagli ...per il certificato dell'insieme di credenziali delle chiavi importato e quindi selezionare Sincronizza.

Domande frequenti

Come è possibile automatizzare l'aggiunta di un certificato Bring Your Own Certificate a un'app?

È possibile usare un certificato dell'autorità di certificazione CA privata per TLS in ingresso nell'app?

È possibile usare un certificato della CA privata per TLS in ingresso in un ambiente del servizio app versione 3 (ASEv3). Non è possibile nel servizio app (multi-tenant). Per altre informazioni sul servizio app multi-tenant e a tenant singolo, vedere Confronto tra Ambiente del servizio app v3 e Servizio app pubblico multi-tenant.

È possibile effettuare chiamate in uscita usando un certificato client della CA privata dall'app?

Questa opzione è supportata solo per le app contenitore di Windows nel servizio app multi-tenant. Inoltre, è possibile effettuare chiamate in uscita usando un certificato client della CA privata con app basate su codice e su contenitore in un ambiente del servizio app versione 3 (ASEv3). Per altre informazioni sul servizio app multi-tenant e a tenant singolo, vedere Confronto tra Ambiente del servizio app v3 e Servizio app pubblico multi-tenant.

È possibile caricare un certificato della CA privata nell'archivio radice attendibile del servizio app?

È possibile caricare il proprio certificato della CA nell'archivio radice attendibile in un ambiente del servizio app versione 3 (ASEv3). Non è possibile modificare l'elenco di certificati radice attendibili nel servizio app (multi-tenant). Per altre informazioni sul servizio app multi-tenant e a tenant singolo, vedere Confronto tra Ambiente del servizio app v3 e Servizio app pubblico multi-tenant.

Altre risorse