Condividi tramite


Sicurezza di Azure Key Vault

Azure Key Vault protegge chiavi crittografiche, certificati, nonché le chiavi private associate ai certificati, e segreti (ad esempio stringhe di connessione e password) nel cloud. Quando si archiviano dati sensibili e business critical, è necessario eseguire le operazioni appropriate per ottimizzare la sicurezza degli insiemi di credenziali e dei dati archiviati al loro interno.

Questo articolo offre una panoramica delle funzionalità di sicurezza e delle procedure consigliate per Azure Key Vault.

Nota

Per un elenco completo delle raccomandazioni sulla sicurezza di Azure Key Vault, vedere la Baseline di sicurezza per Azure Key Vault.

Sicurezza di rete

È possibile ridurre l'esposizione degli insiemi di credenziali specificando gli indirizzi IP che possono accedervi. Gli endpoint servizio di rete virtuale per Azure Key Vault consentono di limitare l'accesso a una rete virtuale specifica. Gli endpoint consentono anche di limitare l'accesso a un elenco di intervalli di indirizzi IPv4 (protocollo internet versione 4). L'accesso viene negato a tutti gli utenti che si connettono all'insieme di credenziali delle chiavi dall'esterno di tali origini. Per i dettagli completi, vedere Endpoint servizio di rete virtuale per Azure Key Vault

Quando le regole del firewall vengono applicate, gli utenti possono leggere i dati da Key Vault solo quando le loro richieste hanno origine da reti virtuali o intervalli di indirizzi IPv4 consentiti. Questo vale anche per l'accesso a Key Vault dal portale di Azure. Benché gli utenti possano accedere a un insieme di credenziali delle chiavi dal portale di Azure, potrebbero non essere in grado di elencare chiavi, segreti o certificati se il computer client in uso non è presente nell'elenco dei computer consentiti. Per la procedura di implementazione, vedere Configurare reti virtuali e firewall di Azure Key Vault

Il servizio Collegamento privato di Azure consente di accedere ad Azure Key Vault e ai servizi di clienti/partner ospitati in Azure tramite un endpoint privato nella rete virtuale. Un endpoint privato di Azure è un'interfaccia di rete che connette privatamente e in modo sicuro a un servizio basato su Collegamento privato di Azure. L'endpoint privato usa un indirizzo IP privato della rete virtuale, introducendo efficacemente il servizio nella rete virtuale. Tutto il traffico verso il servizio può essere instradato tramite l'endpoint privato, quindi non sono necessari gateway, dispositivi NAT, ExpressRoute o connessioni VPN oppure indirizzi IP pubblici. Il traffico tra la rete virtuale e il servizio attraversa la rete backbone Microsoft, impedendone l'esposizione alla rete Internet pubblica. È possibile connettersi a un'istanza di una risorsa di Azure, garantendo il massimo livello di granularità nel controllo di accesso. Per la procedura di implementazione, vedere Integrare Key Vault con Collegamento privato di Azure

TLS e HTTPS

  • Il front-end (piano dati) di Key Vault è un server multi-tenant. Ciò significa che gli insiemi di credenziali delle chiavi di clienti diversi possono condividere lo stesso indirizzo IP pubblico. Per ottenere l'isolamento, ogni richiesta HTTP viene autenticata e autorizzata in modo indipendente dalle altre richieste.
  • Il protocollo HTTPS consente al client di partecipare alla negoziazione TLS. I client possono applicare la versione di TLS e, ogni volta che un client lo fa, l'intera connessione userà la protezione a livello corrispondente. Key Vault supporta le versioni del protocollo TLS 1.2 e 1.3.

Nota

È possibile monitorare la versione TLS usata dai client monitorando i log di Key Vault con query Kusto di esempio qui.

Opzioni di autenticazione di Key Vault

Quando si crea un insieme di credenziali delle chiavi in una sottoscrizione di Azure, questo viene automaticamente associato al tenant di Microsoft Entra della sottoscrizione. Tutti i chiamanti in entrambi i piani devono essere registrati in questo tenant ed eseguire l'autenticazione per accedere all'insieme di credenziali delle chiavi. In entrambi i casi, le applicazioni possono accedere a Key Vault in due modi:

  • Solo applicazione: l'applicazione rappresenta un'entità servizio o un'identità gestita. Questa identità è lo scenario più comune per le applicazioni che devono accedere periodicamente a certificati, chiavi o segreti nell'insieme di credenziali delle chiavi. Affinché questo scenario funzioni, è necessario specificare il objectId dell'applicazione nei criteri di accesso e il applicationId deve non specificato o deve essere null.
  • Solo utente: l'utente accede all'insieme di credenziali delle chiavi da qualsiasi applicazione registrata nel tenant. Azure PowerShell e il portale di Azure sono esempi di questo tipo di accesso. Affinché questo scenario funzioni, è necessario specificare il objectId dell'applicazione nei criteri di accesso e il applicationId non deve essere specificato o deve essere null.
  • application-plus-user (talvolta definito come identità composta): l'utente deve accedere all'insieme di credenziali delle chiavi da un'applicazione specifica e l'applicazione deve usare il flusso OBO (On-Behalf-of Authentication) per rappresentare l'utente. Per il funzionamento di questo scenario, è necessario specificare sia applicationId che objectId nei criteri di accesso. applicationId identifica l'applicazione richiesta e objectId identifica l'utente. Attualmente, questa opzione non è disponibile per il controllo degli accessi in base al ruolo di Azure del piano dati.

In tutti i tipi di accesso, l'applicazione esegue l’autenticazione con Microsoft Entra ID. L'applicazione usa qualsiasi metodo di autenticazione supportato in base al tipo di applicazione. L'applicazione acquisisce un token per una risorsa del piano per la concessione dell'accesso. La risorsa è un endpoint nel piano dati o di gestione, in base all'ambiente di Azure. L'applicazione usa il token e invia una richiesta API REST all'insieme di credenziali delle chiavi. Per altre informazioni, vedere l'intero flusso di autenticazione.

Il modello con un singolo meccanismo di autenticazione per entrambi i piani presenta alcuni vantaggi:

  • Le organizzazioni possono controllare l'accesso a tutti gli insiemi di credenziali delle chiavi in modo centralizzato.
  • Se un utente lascia l'organizzazione, perde immediatamente l'accesso a tutti gli insiemi di credenziali delle chiavi all'interno dell'organizzazione.
  • Le organizzazioni possono personalizzare l'autenticazione usando le opzioni di Microsoft Entra ID, ad esempio abilitando l'autenticazione a più fattori per una maggiore sicurezza.

Per ulteriori informazioni, vedere Nozioni di base sull'autenticazione di Key Vault.

Panoramica del modello di accesso

L'accesso a un insieme di credenziali delle chiavi è controllato tramite due interfacce: il piano di gestione e il piano dati. Il piano di gestione è il punto in cui si gestisce Key Vault stesso. Le operazioni in questo piano includono la creazione e l'eliminazione di insiemi di credenziali delle chiavi, il recupero delle proprietà di Key Vault e l'aggiornamento dei criteri di accesso. Il piano dati è il punto in cui si lavora con i dati archiviati in un insieme di credenziali delle chiavi. È possibile aggiungere, eliminare e modificare chiavi, segreti e certificati.

Entrambi i piani usano Microsoft Entra ID per l'autenticazione. Per l'autorizzazione, il piano di gestione usa il controllo degli accessi in base al ruolo di Azure e il piano dati usa i criteri di accesso di Key Vault e il controllo degli accessi in base al ruolo di Azure per le operazioni del piano dati di Key Vault.

Per accedere a un insieme di credenziali delle chiavi in uno dei due piani, tutti i chiamanti (utenti o applicazioni) devono disporre dell'autenticazione e dell'autorizzazione appropriate. L'autenticazione stabilisce l'identità del chiamante. L'autorizzazione determina le operazioni che il chiamante può eseguire. L'autenticazione con Key Vault funziona in combinazione con Microsoft Entra ID, che è responsabile dell'autenticazione dell'identità di una determinata entità di sicurezza.

Un'entità di sicurezza è un oggetto che rappresenta un utente, un gruppo, un servizio o un'applicazione che richiede l'accesso alle risorse di Azure. Azure assegna un ID oggetto univoco a ogni entità di sicurezza.

  • L'entità di sicurezza di un utente identifica un soggetto che ha un profilo in Microsoft Entra ID.
  • L'entità di sicurezza di un gruppo identifica un set di utenti creati in Microsoft Entra ID. Tutti i ruoli o le autorizzazioni assegnati al gruppo vengono concessi a tutti gli utenti all'interno del gruppo.
  • Un'entità servizio è un tipo di entità di sicurezza che identifica un'applicazione o un servizio, ovvero una porzione di codice anziché un utente o un gruppo. L'ID oggetto di un'entità servizio è noto come ID client e funge da nome utente. Il segreto client dell'entità servizio o il certificato agisce come la password. Molti servizi di Azure supportano l'assegnazione di identità gestita con la gestione automatica di ID client e certificato. L'identità gestita è l'opzione più sicura e consigliata per l'autenticazione all'interno di Azure.

Per altre informazioni sull'autenticazione in Key Vault, vedere Eseguire l'autenticazione in Azure Key Vault.

Accesso condizionale

Key Vault supporta i criteri di accesso condizionale di Microsoft Entra. Con i criteri di accesso condizionale, è possibile applicare i controlli di accesso di Key Vault appropriati per preservare la sicurezza dell'organizzazione quando sono necessari ed evitare di ostacolare gli utenti quando non lo sono.

Per altre informazioni, vedere la panoramica dell'accesso condizionale

Accesso con privilegi

L'autorizzazione determina le operazioni che il chiamante può eseguire. L'autorizzazione in Key Vault usa il controllo degli accessi in base al ruolo di Azure nel piano di gestione e i criteri di accesso di Azure Key Vault o del controllo degli accessi in base al ruolo di Azure nel piano dati.

L'accesso agli insiemi di credenziali avviene tramite due interfacce o piani. Questi piani sono il piano di gestione e il piano dati.

  • Il piano di gestione consente di gestire Key Vault ed è l'interfaccia usata per creare ed eliminare gli insiemi di credenziali. È anche possibile leggere le proprietà degli insiemi di credenziali delle chiavi e gestire i criteri di accesso.
  • Il piano dati consente di lavorare con i dati archiviati in un insieme di credenziali delle chiavi. È possibile aggiungere, eliminare e modificare chiavi, segreti e certificati.

Le applicazioni accedono ai piani tramite endpoint. I controlli di accesso per i due piani funzionano in maniera indipendente. Per concedere a un'applicazione l'accesso per l'uso delle chiavi in un insieme di credenziali delle chiavi, si concede l'accesso al piano dati usando il controllo degli accessi in base al ruolo di Azure o un criterio di accesso di Key Vault. Per concedere a un utente l'accesso in lettura alle proprietà e ai tag dell'insieme di credenziali delle chiavi, ma non ai dati (chiavi, segreti o certificati), concedere l'accesso al piano di gestione con il controllo degli accessi in base al ruolo di Azure.

La tabella seguente illustra gli endpoint per il piano dati e di gestione.

Piano di accesso Endpoint di accesso Operazioni Meccanismo di controllo di accesso
Piano di gestione Globale:
management.azure.com:443

Microsoft Azure gestito da 21Vianet:
management.chinacloudapi.cn:443

Azure US Gov:
management.usgovcloudapi.net:443

Azure per la Germania:
management.microsoftazure.de:443
Creare, leggere, aggiornare ed eliminare insiemi di credenziali delle chiavi

Impostare i criteri di accesso dell'insieme di credenziali delle chiavi

Impostare tag per l'insieme di credenziali delle chiavi
Controllo degli accessi in base al ruolo di Azure
Piano dati Globale:
<nome-insiemecredenziali>.vault.azure.net:443

Microsoft Azure gestito da 21Vianet:
<nome-insiemecredenziali>.vault.azure.cn:443

Azure US Gov:
<nome-insiemecredenziali>.vault.usgovcloudapi.net:443

Azure per la Germania:
<nome-insiemecredenziali>.vault.microsoftazure.de:443
Chiavi: encrypt, decrypt, wrapKey, unwrapKey, sign, verify, get, list, create, update, import, delete, recover, backup, restore, purge, rotate (preview), getrotationpolicy (preview), setrotationpolicy (preview), release(preview)

Certificati: managecontacts, getissuers, listissuers, setissuers, deleteissuers, manageissuers, get, list, create, import, update, delete, recover, backup, restore, purge

Segreti: get, list, set, delete, recover, backup, restore, purge
Criteri di accesso di Key Vault o Controllo degli accessi in base al ruolo di Azure

Gestione dell'accesso amministrativo a Key Vault

Quando si crea un insieme di credenziali delle chiavi in un gruppo di risorse, si gestisce l'accesso usando Microsoft Entra ID. È possibile consentire a utenti o gruppi di gestire gli insiemi di credenziali delle chiavi in un gruppo di risorse. È possibile concedere l'accesso a un livello di ambito specifico assegnando i ruoli di Azure appropriati. Per concedere l'accesso a un utente in modo che possa gestire insiemi di credenziali delle chiavi, assegnare all'utente un ruolo key vault Contributor predefinito in un ambito specifico. A un ruolo di Azure è possibile assegnare i livelli di ambiti seguenti:

  • Sottoscrizione: un ruolo di Azure assegnato a livello di sottoscrizione si applica a tutti i gruppi di risorse e le risorse all'interno di tale sottoscrizione.
  • Gruppo di risorse: un ruolo di Azure assegnato a livello di gruppo di risorse si applica a tutte le risorse del gruppo di risorse.
  • Risorsa specifica: un ruolo di Azure assegnato per una risorsa specifica si applica a tale risorsa. In questo caso, la risorsa è un insieme di credenziali delle chiavi specifico.

Ci sono diversi ruoli predefiniti. Se un ruolo predefinito non soddisfa le specifiche esigenze, è possibile definire un ruolo personalizzato. Per altre informazioni, vedere Controllo degli accessi in base al ruolo di Azure: ruoli predefiniti.

Importante

Quando si usa il modello di autorizzazione Criteri di accesso, un utente con ContributorKey Vault Contributor, o qualsiasi altro ruolo che include Microsoft.KeyVault/vaults/write le autorizzazioni per il piano di gestione dell'insieme di credenziali delle chiavi può concedere l'accesso al piano dati impostando un criterio di accesso di Key Vault. Per impedire l'accesso non autorizzato e la gestione degli insiemi di credenziali delle chiavi, delle chiavi, dei segreti e dei certificati, è essenziale limitare l'accesso del ruolo Collaboratore agli insiemi di credenziali delle chiavi nel modello di autorizzazione criteri di accesso. Per ridurre questo rischio, è consigliabile usare il modello di autorizzazione RBAC (Role-Based-Based Controllo di accesso), che limita la gestione delle autorizzazioni ai ruoli "Proprietario" e "Amministratore accesso utenti", consentendo una netta separazione tra operazioni di sicurezza e compiti amministrativi. Per altre informazioni, vedere La Guida al controllo degli accessi in base al ruolo di Key Vault e Informazioni sul controllo degli accessi in base al ruolo di Azure.

Controllo dell'accesso ai dati di Key Vault

È possibile controllare l'accesso alle chiavi, ai certificati e ai segreti di Key Vault usando il controllo degli accessi in base al ruolo di Azure o i criteri di accesso di Key Vault.

Per ulteriori informazioni, vedere,

Registrazione e monitoraggio

La funzionalità di registrazione di Key Vault salva le informazioni sulle attività eseguite nell'insieme di credenziali. Per informazioni dettagliate, vedere Registrazione di Key Vault.

È possibile integrare Key Vault con Griglia di eventi per ricevere una notifica quando lo stato di una chiave, di un certificato o di un segreto archiviato nell'insieme di credenziali delle chiavi è stato modificato. Per dettagli, vedere Monitoraggio di Key Vault con Griglia di eventi di Azure

È anche importante monitorare l'integrità dell'insieme di credenziali delle chiavi per assicurarsi che il servizio funzioni come previsto. Per informazioni su come eseguire questa operazione, vedere Monitoraggio e avvisi per Azure Key Vault.

Backup e ripristino

La protezione dall'eliminazione temporanea e dalla rimozione definitiva di Azure Key Vault consente di ripristinare gli insiemi di credenziali eliminati e gli oggetti dell'insieme di credenziali. Per dettagli completi, vedere Panoramica dell'eliminazione temporanea di Azure Key Vault.

È anche consigliabile eseguire regolarmente backup dell'insieme di credenziali in caso di aggiornamento/eliminazione/creazione di oggetti all'interno di un insieme di credenziali.

Passaggi successivi