Ruotare e revocare una chiave gestita dal cliente

Questo articolo è la terza parte di una serie di esercitazioni in quattro parti. La prima parte offre una panoramica delle chiavi gestite dal cliente, delle relative funzionalità e delle considerazioni di cui tenere conto prima di abilitarne una nel registro. Nella seconda parte si apprenderà come abilitare una chiave gestita dal cliente tramite l'interfaccia della riga di comando di Azure, il portale di Azure o un modello di Azure Resource Manager. Questo articolo illustra la procedura dettagliata per la rotazione, l'aggiornamento e la revoca di una chiave gestita dal cliente.

Ruotare una chiave gestita dal cliente

Per ruotare una chiave, è possibile aggiornare la versione della chiave in Azure Key Vault o Azure Key Vault Managed HSM oppure creare una nuova chiave. Durante la rotazione della chiave, è possibile specificare la stessa identità usata per creare il registro.

Se vuoi, puoi:

  • Configurare una nuova identità assegnata dall'utente per accedere alla chiave.
  • Abilitare e specificare l'identità assegnata dal sistema nel registro.

Nota

Per abilitare l'identità assegnata dal sistema nel portale, selezionare Impostazioni>Identità e impostare lo stato dell'identità assegnata dal sistema su Attivata.

Assicurarsi che l'identità abbia l'accesso necessario all'archivio chiavi. Per un insieme di credenziali delle chiavi, vedere Abilitare le identità gestite per accedere all'insieme di credenziali delle chiavi. Per Managed HSM, assegnare il ruolo RBAC locale Managed HSM Crypto Service Encryption User a livello di chiave.

Creare o aggiornare la versione della chiave tramite l'interfaccia della riga di comando di Azure

Per creare una nuova versione della chiave in un Key Vault, eseguire il comando az keyvault key create:

# Create new version of existing key
az keyvault key create \
  --name <key-name> \
  --vault-name <key-vault-name>

Per creare una nuova versione della chiave in Managed HSM, usare il parametro --hsm-name:

az keyvault key create \
  --name <key-name> \
  --hsm-name <managed-hsm-name> \
  --kty RSA-HSM \
  --ops wrapKey unwrapKey

Se si configura il registro per rilevare gli aggiornamenti delle versioni delle chiavi, la chiave gestita dal cliente viene aggiornata automaticamente entro un'ora, indipendentemente dal fatto che la chiave venga archiviata in Key Vault o in Managed HSM.

Se si configura il registry per l'aggiornamento manuale per una nuova versione della chiave, eseguire il comando az-acr-encryption-rotate-key. Passare il nuovo ID chiave e l'identità da configurare.

Suggerimento

Quando si esegue az-acr-encryption-rotate-key, è possibile passare un ID chiave con versione o un ID chiave senza versione. Se si usa un ID chiave senza versione, il registro viene quindi configurato per rilevare automaticamente gli aggiornamenti delle versioni delle chiavi successivi.

Per aggiornare manualmente una versione della chiave gestita dal cliente, sono disponibili tre opzioni:

  • Ruotare la chiave e usare un ID client di un'identità gestita.

Se si usa una chiave da un insieme di credenziali diverso, verificare che l'identità disponga delle autorizzazioni get, wrap e unwrap. Per Managed HSM, verificare che l'identità abbia il ruolo Managed HSM Crypto Service Encryption User nell'ambito della chiave.

az acr encryption rotate-key \
  --name <registry-name> \
  --key-encryption-key <new-key-id> \
  --identity <client ID of a managed identity>
  • Ruotare la chiave e usare un'identità assegnata dall'utente.

Prima di usare l'identità gestita assegnata dall'utente, verificare che le autorizzazioni dell'insieme di credenziali delle chiavi necessarie o il ruolo RBAC locale di HSM gestito siano assegnati.

az acr encryption rotate-key \
  --name <registry-name> \
  --key-encryption-key <new-key-id> \
  --identity <id of user assigned identity>
  • Ruotare la chiave e usare un'identità assegnata dal sistema.

Prima di usare l'identità assegnata dal sistema, verifica che le siano assegnate le autorizzazioni di Key Vault richieste o il ruolo RBAC locale di Managed HSM.

az acr encryption rotate-key \
  --name <registry-name> \
  --key-encryption-key <new-key-id> \
  --identity [system]

Creare o aggiornare la versione della chiave tramite il portale di Azure

Usare le impostazioni Encryption del registro per aggiornare le impostazioni della chiave e dell'identità di Key Vault o di Managed HSM per una chiave gestita dal cliente.

Ad esempio, per configurare una nuova chiave:

  1. Nel portale, passare al registro.

  2. In Impostazioni, selezionare Crittografia>Modifica chiave.

    Screenshot delle opzioni per la chiave di crittografia nel portale di Azure.

  3. In Crittografia scegliere una delle opzioni seguenti:

    • Scegliere Seleziona dall'insieme di credenziali delle chiavi e quindi selezionare un insieme di credenziali delle chiavi esistente o un HSM gestito e una chiave. Selezionare Crea nuovo per creare un insieme di credenziali e una chiave. La chiave selezionata è senza versione e abilita la rotazione automatica delle chiavi.
    • Selezionare Immetti URI chiave e specificare direttamente un identificatore di chiave Key Vault o HSM gestito. È possibile specificare un URI della chiave con controllo delle versioni (per una chiave che è necessario ruotare manualmente) o un URI della chiave senza versione (che abilita la rotazione automatica delle chiavi).
  4. Completare la selezione della chiave e quindi selezionare Salva.

Revocare una chiave gestita dal cliente

È possibile revocare una chiave di crittografia gestita dal cliente rimuovendo l'accesso dell'identità del Registro di sistema alla chiave o eliminando la chiave.

Revocare l'accesso a una chiave in un insieme di credenziali

Per modificare i criteri di accesso dell'identità gestita utilizzata dal registro, eseguire il comando az-keyvault-delete-policy:

az keyvault delete-policy \
  --resource-group <resource-group-name> \
  --name <key-vault-name> \
  --object-id <identity-principal-id>

Se il key vault usa Azure RBAC anziché i criteri di accesso, rimuovere l'assegnazione di ruolo Key Vault applicabile.

Revocare l'accesso a una chiave in Managed HSM

HSM gestito non supporta i criteri di accesso dell'insieme di credenziali delle chiavi. Rimuovere l'assegnazione locale del controllo degli accessi in base al ruolo per l'identità del registro. Usare lo stesso ambito in cui è stato creato l'incarico. Nell'esempio seguente viene rimossa un'assegnazione con ambito chiave:

az keyvault role assignment delete \
  --hsm-name <managed-hsm-name> \
  --role "Managed HSM Crypto Service Encryption User" \
  --assignee-object-id <identity-principal-id> \
  --scope /keys/<key-name>

Un'assegnazione creata in /keys o / non viene rimossa da un comando che specifica /keys/<key-name>.

Eliminare la chiave di crittografia

Per eliminare una chiave da un insieme di credenziali, eseguire il comando az-keyvault-key-delete. Questa operazione richiede l'autorizzazione keys/delete.

az keyvault key delete \
  --vault-name <key-vault-name> \
  --name <key-name>

Per eliminare una chiave da Managed HSM, usare il parametro --hsm-name:

az keyvault key delete \
  --hsm-name <managed-hsm-name> \
  --name <key-name>

Nota

La revoca di una chiave gestita dal cliente bloccherà l'accesso a tutti i dati del registry. Se si abilita l'accesso alla chiave o si ripristina una chiave eliminata, il registro utilizzerà la chiave e sarà possibile ottenere di nuovo il controllo dell'accesso ai dati crittografati del registro.

Passaggi successivi

Passare all'articolo successivo per risolvere i problemi comuni, ad esempio gli errori durante la rimozione di un'identità gestita, gli errori 403 e le eliminazioni accidentali delle chiavi.