Fornire l'accesso a chiavi, certificati e segreti di Key Vault con il controllo degli accessi in base al ruolo di Azure

Nota

Il provider di risorse Key Vault supporta due tipi di risorse: gli insiemi di credenziali e i moduli di protezione hardware gestiti (HSM) gestiti. Il controllo di accesso descritto in questo articolo si applica solo agli insiemi di credenziali. Per informazioni sul controllo di accesso per gli HSM gestiti, vedere Controllo di accesso di HSM gestiti.

Nota

La configurazione dei certificati del servizio app di Azure tramite il portale di Azure non supporta il modello di autorizzazione con controllo degli accessi in base al ruolo di Key Vault. È possibile usare Azure PowerShell, l'interfaccia della riga di comando di Azure, le distribuzioni di modelli di Azure Resource Manager con l'assegnazione di ruolo Utente di certificati di Key Vault per l'identità globale del servizio app, ad esempio Servizio app di Microsoft Azure nel cloud pubblico.

Il controllo degli accessi in base al ruolo di Azure è un sistema di autorizzazione basato su Azure Resource Manager che offre una gestione centralizzata degli accessi delle risorse di Azure.

Il controllo degli accessi in base al ruolo di Azure consente agli utenti di gestire le autorizzazioni per chiavi, segreti e certificati. Consente di gestire da un'unica posizione tutte le autorizzazioni in tutti gli insiemi di credenziali delle chiavi.

Il modello di Controllo degli accessi in base al ruolo di Azure consente agli utenti di impostare le autorizzazioni per livelli di ambito diversi: gruppo di gestione, sottoscrizione, gruppo di risorse o singole risorse. Il controllo degli accessi in base al ruolo di Azure per l'insieme di credenziali delle chiavi consente anche agli utenti di avere autorizzazioni separate per chiavi, segreti e certificati individuali

Per altre informazioni, vedere Controllo degli accessi in base al ruolo di Azure.

Procedure consigliate per l'assegnazione di ruoli per chiavi, segreti e certificati individuali

È consigliabile usare un insieme di credenziali per ogni applicazione per ogni ambiente (sviluppo, pre-produzione e produzione) con ruoli assegnati nell'ambito di Key Vault.

È consigliabile evitare l'assegnazione di ruoli su singole chiavi, segreti e certificati. Eccezioni alle indicazioni generali:

  • Scenari in cui i singoli segreti devono essere condivisi tra più applicazioni, ad esempio un'applicazione deve accedere ai dati dall'altra applicazione

Per altre informazioni sulle linee guida per la gestione di Azure Key Vault, vedere:

Ruoli predefiniti di Azure per le operazioni del piano dati di Key Vault

Nota

Il ruolo Key Vault Contributor viene usato solo nelle operazioni del piano di gestione per gestire gli insiemi di credenziali delle chiavi. Non consente l'accesso a chiavi, segreti e certificati.

Ruolo predefinito Descrizione ID
Amministratore di Key Vault Eseguire tutte le operazioni del piano dati su un insieme di credenziali delle chiavi e su tutti gli oggetti in esso contenuti, inclusi certificati, chiavi e segreti. Non può gestire le risorse dell'insieme di credenziali delle chiavi o le assegnazioni di ruolo. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. 00482a5a-887f-4fb3-b363-3b7fe8e74483
Ruolo con autorizzazioni di lettura per Key Vault Leggere i metadati degli insiemi di credenziali delle chiavi e dei relativi certificati, chiavi e segreti. Non può leggere valori sensibili come il contenuto dei segreti o il materiale delle chiavi. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. 21090545-7ca7-4776-b22c-e363652d74d2
Responsabile dei certificati di Key Vault Eseguire qualsiasi azione sui certificati di un insieme di credenziali delle chiavi, ad eccezione della gestione delle autorizzazioni. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. a4417e6f-fecd-4de8-b567-7b0420556985
Utente di certificati di Key Vault Legge l'intero contenuto del certificato, inclusa la parte di segreti e chiavi. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. db79e9a7-68ee-4b58-9aeb-b90e7c24fcba
Responsabile della crittografia di Key Vault Eseguire qualsiasi azione sulle chiavi di un insieme di credenziali delle chiavi, ad eccezione della gestione delle autorizzazioni. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. 14b46e9e-c2b7-41b4-b07b-48a6ebf60603
Utente di crittografia del servizio di crittografia di Key Vault Leggere i metadati delle chiavi ed eseguire operazioni di wrapping/annullamento del wrapping. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. e147488a-f6f5-4113-8e2d-b22465e65bf6
Utente della crittografia di Key Vault Eseguire operazioni crittografiche usando le chiavi. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. 12338af0-0e69-4776-bea7-57ae8d297424
Utente del rilascio del servizio di crittografia di Key Vault Rilascia le chiavi per Confidential Computing di Azure e ambienti equivalenti. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'.
Responsabile dei segreti di Key Vault Eseguire qualsiasi azione sui segreti di un insieme di credenziali delle chiavi, ad eccezione della gestione delle autorizzazioni. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. b86a8fe4-44ce-4948-aee5-eccb2c155cd7
Utente dei segreti di Key Vault Legge il contenuto dei segreti, inclusa la parte segreta di un certificato con chiave privata. Funziona solo per gli insiemi di credenziali delle chiavi che usano il modello di autorizzazione 'Controllo degli accessi in base al ruolo di Azure'. 4633458b-17de-408a-b874-0445c86b69e6

Per altre informazioni sulle definizioni dei ruoli predefiniti di Azure, vedere Ruoli predefiniti di Azure.

Gestione delle assegnazioni di ruoli predefiniti del piano dati di Key Vault

Ruolo predefinito Descrizione ID
Amministratore di accesso ai dati di Key Vault Gestisce l'accesso ad Azure Key Vault aggiungendo o rimuovendo le assegnazioni di ruolo per i ruoli di amministratore di Key Vault, responsabile dei certificati di Key Vault, utente di crittografia del servizio di crittografia di Key Vault, utente di crittografia di Key Vault, lettore di Key Vault, responsabile dei segreti di Key Vault o utente di segreti di Key Vault. Include una condizione del controllo degli accessi in base agli attributi. 8b54135c-b56d-4d72-a534-26097cfdc8d8

Uso delle autorizzazioni per segreti, chiavi e certificati in base al controllo degli accessi in base al ruolo di Azure con Key Vault

Il nuovo modello di autorizzazione con controllo degli accessi in base al ruolo di Azure per Key Vault offre un'alternativa al modello di autorizzazioni con criteri di accesso all'insieme di credenziali.

Prerequisiti

È necessario disporre di una sottoscrizione di Azure. In caso contrario, è possibile creare un account gratuito prima di iniziare.

Per aggiungere assegnazioni di ruoli, è necessario avere le autorizzazioni Microsoft.Authorization/roleAssignments/write e Microsoft.Authorization/roleAssignments/delete, ad esempio Amministratore dell'accesso ai dati di Key Vault, Amministratore dell'accesso utenti o Proprietario.

Abilitare le autorizzazioni con controllo degli accessi in base al ruolo di Azure in Key Vault

Nota

Per cambiare il modello di autorizzazione, è necessaria l'autorizzazione 'Microsoft.Authorization/roleAssignments/write', che fa parte dei ruoli di Proprietario e Amministratore dell'accesso utenti. I ruoli di amministratore classico della sottoscrizione, come 'Amministratore del servizio' e 'Coamministratore' non sono supportati.

  1. Abilitare le autorizzazioni con controllo degli accessi in base al ruolo di Azure in un nuovo insieme di credenziali delle chiavi:

    Abilitare le autorizzazioni di Controllo degli accessi in base al ruolo di Azure - Nuovo insieme di credenziali

  2. Abilitare le autorizzazioni con controllo degli accessi in base al ruolo di Azure in un insieme di credenziali delle chiavi esistente:

    Abilitare le autorizzazioni di Controllo degli accessi in base al ruolo di Azure - Insieme di credenziali esistente

Importante

L'impostazione del modello di autorizzazione con controllo degli accessi in base al ruolo di Azure invalida tutte le autorizzazioni con criteri di accesso. Può causare interruzioni quando non vengono assegnati ruoli di Azure equivalenti.

Assegnare il ruolo

Nota

È consigliabile usare l'ID ruolo univoco anziché il nome del ruolo negli script. In questo modo, se un ruolo viene rinominato, gli script continueranno a funzionare. In questo documento viene usato il nome del ruolo solo a fini di leggibilità.

Per creare un'assegnazione di ruolo usando l'interfaccia della riga di comando di Azure, usare il comando az role assignment :

az role assignment create --role {role-name-or-id} --assignee {assignee-upn}> --scope {scope}

Per i dettagli completi, vedere Assegnare ruoli di Azure tramite l'interfaccia della riga di comando di Azure.

Assegnazione di ruolo nell'ambito di un gruppo di risorse

az role assignment create --role "Key Vault Reader" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}

Per i dettagli completi, vedere Assegnare ruoli di Azure tramite l'interfaccia della riga di comando di Azure.

L'assegnazione di ruolo precedente consente di elencare gli oggetti dell'insieme di credenziali delle chiavi in Key Vault.

Assegnazione di ruolo dell'ambito di Key Vault

az role assignment create --role "Key Vault Secrets Officer" --assignee {assignee-upn} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}

Per i dettagli completi, vedere Assegnare ruoli di Azure tramite l'interfaccia della riga di comando di Azure.

Assegnazione di ruolo nell'ambito dei segreti

Nota

Le assegnazioni di ruolo nell'ambito di segreti, certificati e chiavi di Key Vault deve essere usata solo per i scenari limitati descritti qui per rispettare le procedure consigliate per la sicurezza.

az role assignment create --role "Key Vault Secrets Officer" --assignee {i.e user@microsoft.com} --scope /subscriptions/{subscriptionid}/resourcegroups/{resource-group-name}/providers/Microsoft.KeyVault/vaults/{key-vault-name}/secrets/RBACSecret

Per i dettagli completi, vedere Assegnare ruoli di Azure tramite l'interfaccia della riga di comando di Azure.

Test e verifica

Nota

I browser usano la memorizzazione nella cache e dopo la rimozione di un'assegnazione di ruolo è necessario aggiornare la pagina. Attendere diversi l'aggiornamento delle assegnazioni di ruoli

  1. Convalidare l'aggiunta di un nuovo segreto senza il ruolo "Responsabile dei segreti di Key Vault" a livello di insieme di credenziali delle chiavi.

    1. Passare alla scheda Controllo di accesso (IAM) dell'insieme di credenziali delle chiavi e rimuovere l'assegnazione di ruolo "Responsabile dei segreti di Key Vault" per questa risorsa.

      Rimuovere l'assegnazione - Insieme di credenziali delle chiavi

    2. Passare al segreto creato in precedenza. È possibile visualizzare tutte le proprietà del segreto.

      Visualizzazione privata con accesso

    3. La creazione di un nuovo segreto (Segreti > +Genera/Importa) dovrebbe generare questo errore:

      Creare un nuovo segreto

  2. Convalidare la modifica dei segreti senza il ruolo "Responsabile dei segreti di Key Vault" a livello di segreto.

    1. Passare alla scheda Controllo di accesso (IAM) del segreto creato in precedenza e rimuovere l'assegnazione di ruolo "Responsabile dei segreti di Key Vault" per questa risorsa.

    2. Passare al segreto creato in precedenza. È possibile visualizzare le proprietà del segreto.

      Visualizzazione privata senza accesso

  3. Convalidare i segreti letti senza ruolo Lettore a livello di insieme di credenziali delle chiavi.

    1. Passare alla scheda Controllo di accesso (IAM) dell'insieme di credenziali delle chiavi e rimuovere l'assegnazione di ruolo "Lettore di Key Vault" per questa risorsa.

    2. Il passaggio alla scheda Segreti dell'insieme di credenziali delle chiavi dovrebbe generare questo errore:

      Scheda Segreto - errore

Creazione di ruoli personalizzati

Comando az role definition create

az role definition create --role-definition '{ \
   "Name": "Backup Keys Operator", \
   "Description": "Perform key backup/restore operations", \
    "Actions": [ 
    ], \
    "DataActions": [ \
        "Microsoft.KeyVault/vaults/keys/read ", \
        "Microsoft.KeyVault/vaults/keys/backup/action", \
         "Microsoft.KeyVault/vaults/keys/restore/action" \
    ], \
    "NotDataActions": [ 
   ], \
    "AssignableScopes": ["/subscriptions/{subscriptionId}"] \
}'

Per altre informazioni sulla creazione di ruoli personalizzati, vedere:

Ruoli personalizzati di Azure

Domande frequenti

È possibile usare le assegnazioni con ambito oggetti del modello di autorizzazione Controllo degli accessi in base al ruolo di Key Vault per fornire isolamento per i team delle applicazioni all'interno di Key Vault?

No. Il modello di autorizzazione con controllo degli accessi in base al ruolo consente di assegnare l'accesso a singoli oggetti in Key Vault a un utente o a un'applicazione, ma le operazioni amministrative, come il controllo di accesso alla rete, il monitoraggio e la gestione di oggetti, richiedono autorizzazioni a livello di insieme di credenziali delle chiavi, il che esporrà quindi le informazioni protette agli operatori di tutti i team delle applicazioni.

Altre informazioni