Panoramica dei certificati per i servizi cloud di Azure (versione classica)

Importante

Servizi cloud (versione classica) è ora deprecato per i nuovi clienti e verrà ritirato il 31 agosto 2024 per tutti i clienti. Le nuove distribuzioni devono usare il nuovo modello di distribuzione basato su Azure Resource Manager, Servizi cloud di Azure (supporto "Extended").

I certificati di servizio vengono usati in Azure per i servizi cloud, mentre i certificati di gestione vengono usati per l'autenticazione con l'API di gestione. Questo argomento offre informazioni generali su entrambi i tipi di certificati, su come crearli e come distribuirli in Azure.

Quelli usati in Azure sono certificati x.509 v3 e possono essere firmati da un altro certificato attendibile o essere autofirmati. Un certificato autofirmato viene firmato dall'autore e pertanto non è attendibile per impostazione predefinita. La maggior parte dei browser può ignorare questo problema. È consigliabile utilizzare i certificati autofirmati solo quando si sviluppano e si testano servizi cloud.

I certificati usati da Azure possono contenere una chiave pubblica. I certificati hanno un'identificazione personale che consente di identificarli in modo non ambiguo. Questa identificazione personale viene usata nel file di configurazione di Azure per identificare il certificato che un servizio cloud dovrebbe usare.

Nota

I servizi Cloud di Azure non accettano il certificato crittografato AES256-SHA256.

Cosa sono i certificati di servizio?

I certificati di servizio sono associati ai servizi cloud e consentono la comunicazione sicura da e verso il servizio. Ad esempio, se si distribuisse un ruolo Web, si fornirebbe un certificato per autenticare un endpoint HTTPS esposto. I certificati di servizio, definiti nella definizione del servizio, vengono automaticamente distribuiti nella macchina virtuale che esegue un'istanza del ruolo.

È possibile caricare i certificati di servizio nel portale di Azure tramite il portale di Azure o usando il modello di distribuzione classico. I certificati di servizio sono associati a uno specifico servizio cloud. Vengono assegnati a una distribuzione nel file di definizione del servizio.

I certificati di servizio possono essere gestiti separatamente dai servizi e da persone diverse. Ad esempio, uno sviluppatore può caricare un pacchetto del servizio che fa riferimento a un certificato caricato in precedenza in Azure da un responsabile IT. Un responsabile IT può gestire e rinnovare tale certificato, modificando la configurazione del servizio, senza dover caricare un nuovo pacchetto del servizio. Questa operazione è possibile poiché il nome logico, il nome di archivio e il percorso vengono specificati nel file di definizione del servizio, mentre l'identificazione personale del certificato viene specificata nel file di configurazione del servizio. Per aggiornare il certificato, è sufficiente caricare un nuovo certificato e modificare il valore dell'identificazione personale nel file di configurazione del servizio.

Nota

L'articolo domande frequenti su Servizi cloud - Configurazione e Gestione contiene alcune utili informazioni sui certificati.

Cosa sono i certificati di gestione?

I certificati di gestione consentono di eseguire l'autenticazione con il modello di distribuzione classico. Numerosi programmi e strumenti (ad esempio Visual Studio o Azure SDK) usano questi certificati per automatizzare la configurazione e la distribuzione di vari servizi di Azure. Questi non sono realmente correlati ai servizi cloud.

Avviso

Fare attenzione. Questi tipi di certificati consentono a chiunque esegua l'autenticazione di gestire la sottoscrizione a cui sono associati.

Limiti

È previsto un limite di 100 certificati di gestione per ogni sottoscrizione. È anche previsto un limite di 100 certificati di gestione per tutte le sottoscrizioni che fanno riferimento all'ID utente di un amministratore del servizio specifico. Se l'ID utente per l'amministratore dell'account è già stato usato per aggiungere 100 certificati di gestione e ne sono necessari altri, è possibile aggiungere un coamministratore per aumentare il numero di certificati.

Inoltre, i certificati di gestione non possono essere usati con le sottoscrizioni CSP perché queste supportano solo il modello di distribuzione Azure Resource Manager, mentre i certificati di gestione usano il modello di distribuzione classico. Vedere Modello di distribuzione Azure Resource Manager rispetto a quello classico e Informazioni sull'autenticazione con Azure SDK per .NET per altre informazioni sulle opzioni per le sottoscrizioni CSP.

Creare un nuovo certificato autofirmato

È possibile usare qualsiasi strumento disponibile per creare un certificato autofirmato purché rispetti queste impostazioni:

  • Un certificato X.509.

  • Contiene una chiave pubblica.

  • Viene creato per lo scambio di chiave (file PFX).

  • Il nome del soggetto deve corrispondere al dominio usato per accedere al servizio cloud.

    Non è possibile acquisire un certificato TLS/SSL per il dominio cloudapp.net o per domini di Azure. Il nome del soggetto del certificato deve corrispondere al nome di dominio personalizzato usato per accedere all'applicazione. Ad esempio contoso.net, non contoso.cloudapp.net.

  • Crittografia minima a 2048 bit.

  • Solo certificato di servizio: il certificato lato client deve trovarsi nell'archivio certificati Personale .

Sono disponibili due semplici modi per creare un certificato in Windows: con l'utilità makecert.exe o con IIS.

Makecert.exe

Questa utilità è stata deprecata e di seguito non è più disponibile la relativa documentazione. Per altre informazioni, vedere questo articolo di MSDN.

PowerShell

$cert = New-SelfSignedCertificate -DnsName yourdomain.cloudapp.net -CertStoreLocation "cert:\LocalMachine\My" -KeyLength 2048 -KeySpec "KeyExchange"
$password = ConvertTo-SecureString -String "your-password" -Force -AsPlainText
Export-PfxCertificate -Cert $cert -FilePath ".\my-cert-file.pfx" -Password $password

Nota

Se si vuole usare il certificato con un indirizzo IP anziché un dominio, usare l'indirizzo IP nel parametro -DnsName.

Se si desidera usare questo certificato con il portale di gestione, esportarlo in un file con estensione cer :

Export-Certificate -Type CERT -Cert $cert -FilePath .\my-cert-file.cer

Internet Information Services (IIS)

Su Internet sono disponibili molte pagine che spiegano come eseguire questa operazione con IIS. Qui ce n’è uno ottimo che ho trovato che ritengo che spieghi bene.

Linux

Questo articolo descrive come creare certificati tramite SSH.

Passaggi successivi

Caricare il certificato di servizio nel portale di Azure.

Caricare il certificato dell'API di gestione nel portale di Azure.