Cos'è l'insieme di credenziali chiave di Azure?What is Azure Key Vault?

Le applicazioni e i servizi cloud usano chiavi crittografiche e segreti per proteggere le informazioni.Cloud applications and services use cryptographic keys and secrets to help keep information secure. Azure Key Vault protegge le chiavi e i segreti.Azure Key Vault safeguards these keys and secrets. Quando si usa Key Vault, è possibile crittografare le chiavi di autenticazione, le chiavi dell'account di archiviazione, le chiavi di crittografia dei dati, i file PFX e le password usando chiavi protette da moduli di protezione hardware (HSM).When you use Key Vault, you can encrypt authentication keys, storage account keys, data encryption keys, .pfx files, and passwords by using keys that are protected by hardware security modules (HSMs).

Key Vault contribuisce a risolvere i problemi seguenti:Key Vault helps solve the following problems:

  • Gestione dei segreti: Archiviare in modo sicuro e controllare rigorosamente l'accesso a token, password, certificati, chiavi API e altri segreti.Secret management: Securely store and tightly control access to tokens, passwords, certificates, API keys, and other secrets.
  • Gestione delle chiavi: Creare e controllare le chiavi di crittografia che crittografano i dati.Key management: Create and control encryption keys that encrypt your data.
  • Gestione dei certificati: Effettuare il provisioning, la gestione e la distribuzione di certificati Secure Sockets Layer/Transport Layer Security (SSL/TLS) pubblici e privati per l'uso con Azure e le risorse connesse interne.Certificate management: Provision, manage, and deploy public and private Secure Sockets Layer/Transport Layer Security (SSL/TLS) certificates for use with Azure and your internal connected resources.
  • Archiviare i segreti supportati da HSM: Usare il software o FIPS 140-2 livello 2 convalidato HSM per proteggere i segreti e le chiavi.Store secrets backed by HSMs: Use either software or FIPS 140-2 Level 2 validated HSMs to help protect secrets and keys.

Concetti di baseBasic concepts

Azure Key Vault è uno strumento per archiviare i segreti e accedervi in modo sicuro.Azure Key Vault is a tool for securely storing and accessing secrets. Un segreto è qualsiasi elemento per cui si vuole controllare rigorosamente l'accesso, ad esempio chiavi API, password o certificati.A secret is anything that you want to tightly control access to, such as API keys, passwords, or certificates. Un insieme di credenziali è un gruppo logico di segreti.A vault is logical group of secrets.

Ecco altri termini importanti:Here are other important terms:

  • Tenant: un tenant è l'organizzazione che possiede e gestisce una specifica istanza dei servizi cloud Microsoft.Tenant: A tenant is the organization that owns and manages a specific instance of Microsoft cloud services. Viene spesso usato per fare riferimento al set di servizi di Azure e Office 365 per un'organizzazione.It’s most often used to refer to the set of Azure and Office 365 services for an organization.

  • Proprietario dell'insieme di credenziali: il proprietario di un insieme di credenziali può creare un insieme di credenziali delle chiavi e ottenerne l'accesso e il controllo completi.Vault owner: A vault owner can create a key vault and gain full access and control over it. Il proprietario dell'insieme di credenziali può anche configurare il controllo per registrare chi accede a segreti e chiavi.The vault owner can also set up auditing to log who accesses secrets and keys. Gli amministratori possono controllare il ciclo di vita delle chiavi.Administrators can control the key lifecycle. Possono passare a una nuova versione della chiave, eseguirne il backup e svolgere attività correlate.They can roll to a new version of the key, back it up, and do related tasks.

  • Consumer dell'insieme di credenziali: quando il proprietario dell'insieme di credenziali concede l'accesso a un consumer, quest'ultimo può eseguire azioni sugli asset all'interno dell'insieme di credenziali delle chiavi.Vault consumer: A vault consumer can perform actions on the assets inside the key vault when the vault owner grants the consumer access. Le azioni disponibili dipendono dalle autorizzazioni concesse.The available actions depend on the permissions granted.

  • Resource (Risorsa): una risorsa è un elemento gestibile disponibile tramite Azure.Resource: A resource is a manageable item that's available through Azure. Esempi comuni sono la macchina virtuale, l'account di archiviazione, l'app Web, il database e la rete virtuale.Common examples are virtual machine, storage account, web app, database, and virtual network. Sono disponibili molte altre.There are many more.

  • Gruppo di risorse: Un gruppo di risorse è un contenitore che include le risorse correlate per una soluzione di Azure.Resource group: A resource group is a container that holds related resources for an Azure solution. Il gruppo di risorse può includere tutte le risorse della soluzione o solo le risorse da gestire come gruppo.The resource group can include all the resources for the solution, or only those resources that you want to manage as a group. L'utente decide come allocare le risorse ai gruppi di risorse nel modo più appropriato per l'organizzazione.You decide how you want to allocate resources to resource groups, based on what makes the most sense for your organization.

  • Entità servizio: Un'entità servizio di Azure è un'identità di sicurezza usata da app, servizi e strumenti di automazione creati dall'utente per accedere a risorse di Azure specifiche.Service principal: An Azure service principal is a security identity that user-created apps, services, and automation tools use to access specific Azure resources. È possibile considerarlo come una "identità utente" (nome utente e password o certificato) con un ruolo specifico e autorizzazioni strettamente controllate.Think of it as a "user identity" (username and password or certificate) with a specific role, and tightly controlled permissions. A differenza di un'identità utente generica, un'entità servizio dovrà eseguire solo operazioni specifiche.A service principal should only need to do specific things, unlike a general user identity. Migliora la sicurezza se si concede solo il livello di autorizzazione minimo necessario per eseguire le attività di gestione.It improves security if you grant it only the minimum permission level that it needs to perform its management tasks.

  • Azure Active Directory (Azure AD): Azure AD è il servizio Active Directory di un tenant.Azure Active Directory (Azure AD): Azure AD is the Active Directory service for a tenant. Ogni directory dispone di uno o più domini.Each directory has one or more domains. A una directory possono essere associate molte sottoscrizioni, ma un solo tenant.A directory can have many subscriptions associated with it, but only one tenant.

  • ID tenant di Azure: un ID tenant è un modo univoco per identificare un'istanza di Azure AD all'interno di una sottoscrizione di Azure.Azure tenant ID: A tenant ID is a unique way to identify an Azure AD instance within an Azure subscription.

  • Identità gestite: Azure Key Vault consente di archiviare in modo sicuro le credenziali e altre chiavi e segreti, ma è necessario autenticare il codice in Key Vault per recuperarle.Managed identities: Azure Key Vault provides a way to securely store credentials and other keys and secrets, but your code needs to authenticate to Key Vault to retrieve them. L'uso di un'identità gestita consente di risolvere il problema in maniera più semplice, assegnando ai servizi di Azure un'identità gestita automaticamente in Azure AD.Using a managed identity makes solving this problem simpler by giving Azure services an automatically managed identity in Azure AD. È possibile usare questa identità per l'autenticazione in Key Vault o in qualsiasi servizio che supporti l'autenticazione di Azure AD, senza dover inserire le credenziali nel codice.You can use this identity to authenticate to Key Vault or any service that supports Azure AD authentication, without having any credentials in your code. Per altre informazioni, vedere la figura seguente e la Panoramica delle identità gestite per le risorse di Azure.For more information, see the following image and the overview of managed identities for Azure resources.

    Diagramma del funzionamento delle identità gestite per le risorse di Azure

AuthenticationAuthentication

Per eseguire qualsiasi operazione con Key Vault, è prima necessario eseguire l'autenticazione.To do any operations with Key Vault, you first need to authenticate to it. Esistono tre modi per eseguire l'autenticazione a Key Vault:There are three ways to authenticate to Key Vault:

  • Identità gestite per le risorse di Azure: Quando si distribuisce un'app in una macchina virtuale in Azure, è possibile assegnare un'identità alla macchina virtuale che ha accesso a Key Vault.Managed identities for Azure resources: When you deploy an app on a virtual machine in Azure, you can assign an identity to your virtual machine that has access to Key Vault. È anche possibile assegnare identità ad altre risorse di Azure.You can also assign identities to other Azure resources. Il vantaggio di questo approccio è che l'app o il servizio non gestisce la rotazione del primo segreto.The benefit of this approach is that the app or service isn't managing the rotation of the first secret. Azure ruota automaticamente l'identità.Azure automatically rotates the identity. Questo approccio è consigliato come procedura consigliata.We recommend this approach as a best practice.
  • Entità servizio e certificato: È possibile usare un'entità servizio e un certificato associato con accesso a Key Vault.Service principal and certificate: You can use a service principal and an associated certificate that has access to Key Vault. Questo approccio non è consigliato perché il proprietario o lo sviluppatore dell'applicazione deve ruotare il certificato.We don't recommend this approach because the application owner or developer must rotate the certificate.
  • Entità servizio e segreto: Sebbene sia possibile usare un'entità servizio e un segreto per l'autenticazione a Key Vault, non è consigliabile.Service principal and secret: Although you can use a service principal and a secret to authenticate to Key Vault, we don't recommend it. È difficile ruotare automaticamente il segreto di bootstrap usato per l'autenticazione Key Vault.It's hard to automatically rotate the bootstrap secret that's used to authenticate to Key Vault.

Ruoli dell'insieme di credenziali delle chiaviKey Vault roles

La seguente tabella permette di capire meglio come l'insieme di credenziali chiave aiuti a soddisfare le esigenze degli sviluppatori e degli amministratori della sicurezza.Use the following table to better understand how Key Vault can help to meet the needs of developers and security administrators.

RoleRole Presentazione del problemaProblem statement Soluzione offerta dall'insieme di credenziali chiave di AzureSolved by Azure Key Vault
Sviluppatore di un'applicazione AzureDeveloper for an Azure application "Desidero scrivere un'applicazione per Azure che usa chiavi per la firma e la crittografia.“I want to write an application for Azure that uses keys for signing and encryption. Tuttavia, desidero che queste chiavi siano esterne all'applicazione, in modo che la soluzione sia adatta a un'applicazione geograficamente distribuita.But I want these keys to be external from my application so that the solution is suitable for an application that's geographically distributed.

Voglio che queste chiavi e questi segreti siano protetti, senza dover scrivere manualmente il codice,I want these keys and secrets to be protected, without having to write the code myself. e voglio poterli usare facilmente dall'applicazione ottenendo prestazioni ottimali."I also want these keys and secrets to be easy for me to use from my applications, with optimal performance.”
√ Le chiavi vengono archiviate in un insieme di credenziali e richiamate dall'URI quando è necessario.√ Keys are stored in a vault and invoked by URI when needed.

√ Le chiavi vengono protette da Azure con algoritmi standard del settore, lunghezze delle chiavi e moduli di protezione hardware.√ Keys are safeguarded by Azure, using industry-standard algorithms, key lengths, and hardware security modules.

√ Le chiavi vengono elaborate in moduli di protezione hardware che risiedono negli stessi data center di Azure in cui si trovano le applicazioni.√ Keys are processed in HSMs that reside in the same Azure datacenters as the applications. In questo modo si ottiene una migliore affidabilità e una latenza ridotta rispetto a chiavi che si trovano in una posizione diversa, ad esempio in locale.This method provides better reliability and reduced latency than keys that reside in a separate location, such as on-premises.
Sviluppatore di software come un servizio (SaaS)Developer for software as a service (SaaS) "Non voglio essere in alcun modo responsabile delle chiavi e dei segreti dei tenant dei miei clienti.“I don’t want the responsibility or potential liability for my customers’ tenant keys and secrets.

Voglio che siano i clienti a possedere e gestire le chiavi per potermi concentrare su ciò che so fare meglio, ovvero fornire le principali funzionalità del software."I want customers to own and manage their keys so that I can concentrate on doing what I do best, which is providing the core software features.”
√ I clienti possono importare le loro chiavi in Azure e gestirle.√ Customers can import their own keys into Azure, and manage them. Quando un'applicazione SaaS deve eseguire operazioni di crittografia usando le chiavi dei clienti, Key Vault esegue queste operazioni per conto dell'applicazione.When a SaaS application needs to perform cryptographic operations by using customers’ keys, Key Vault does these operations on behalf of the application. L'applicazione non vede le chiavi dei clienti.The application does not see the customers’ keys.
Responsabile della sicurezzaChief security officer (CSO) "Voglio la certezza che le applicazioni siano conformi ai moduli di protezione hardware FIPS 140-2 livello 2 per la gestione delle chiavi protetta.“I want to know that our applications comply with FIPS 140-2 Level 2 HSMs for secure key management.

Voglio assicurarmi che la mia organizzazione abbia il controllo del ciclo di vita delle chiavi e possa monitorare l'utilizzo delle chiavi.I want to make sure that my organization is in control of the key lifecycle and can monitor key usage.

Anche se usiamo più servizi e risorse di Azure, voglio gestire le chiavi da una sola posizione in Azure.And although we use multiple Azure services and resources, I want to manage the keys from a single location in Azure.”
√ I moduli di protezione hardware hanno la certificazione FIPS 140-2 livello 2.√ HSMs are FIPS 140-2 Level 2 validated.

√ L'insieme di credenziali delle chiavi è progettato in modo che Microsoft non possa vedere o estrarre le chiavi.√ Key Vault is designed so that Microsoft does not see or extract your keys.

√ L'utilizzo delle chiavi viene registrato quasi in tempo reale.√ Key usage is logged in near real time.

√ L'insieme di credenziali offre un'unica interfaccia, indipendentemente dal numero di insiemi di credenziali disponibili in Azure, dalle aree supportate e dalle applicazioni che li usano.√ The vault provides a single interface, regardless of how many vaults you have in Azure, which regions they support, and which applications use them.

Chiunque abbia una sottoscrizione di Azure può creare e usare insiemi di credenziali delle chiavi.Anybody with an Azure subscription can create and use key vaults. Sebbene Key Vault vantaggi per gli sviluppatori e gli amministratori della sicurezza, può essere implementato e gestito dall'amministratore di un'organizzazione che gestisce altri servizi di Azure.Although Key Vault benefits developers and security administrators, it can be implemented and managed by an organization’s administrator who manages other Azure services. Questo amministratore può ad esempio accedere con una sottoscrizione di Azure, creare un insieme di credenziali per l'organizzazione in cui archiviare le chiavi e quindi essere responsabile delle attività operative come le seguenti:For example, this administrator can sign in with an Azure subscription, create a vault for the organization in which to store keys, and then be responsible for operational tasks like these:

  • Creare o importare una chiave o un segretoCreate or import a key or secret
  • Revocare o eliminare una chiave o un segretoRevoke or delete a key or secret
  • Autorizzare gli utenti o le applicazioni per l'accesso all'insieme di credenziali delle chiavi, per consentire la gestione o l'uso delle chiavi e dei segreti corrispondentiAuthorize users or applications to access the key vault, so they can then manage or use its keys and secrets
  • Configurare l'utilizzo delle chiavi (ad esempio, la firma o la crittografia)Configure key usage (for example, sign or encrypt)
  • Monitorare l'utilizzo delle chiaviMonitor key usage

Questo amministratore offre agli sviluppatori gli URI da chiamare dalle applicazioni.This administrator then gives developers URIs to call from their applications. Questo amministratore fornisce inoltre le informazioni di registrazione dell'utilizzo chiave all'amministratore della sicurezza.This administrator also gives key usage logging information to the security administrator.

Panoramica del funzionamento di Azure Key Vault

Gli sviluppatori possono gestire le chiavi anche direttamente, usando le API.Developers can also manage the keys directly, by using APIs. Per altre informazioni, vedere la Guida per gli sviluppatori dell'insieme di credenziali delle chiavi di Azure.For more information, see the Key Vault developer's guide.

Passaggi successiviNext steps

Informazioni su come proteggere l'insieme di credenziali.Learn how to secure your vault.

L'insieme di credenziali delle chiavi di Azure è disponibile nella maggior parte delle aree.Azure Key Vault is available in most regions. Per altre informazioni, vedere la pagina Insieme di credenziali delle chiavi - Prezzi.For more information, see the Key Vault pricing page.