Share via


Crittografia dei dati per Database di Azure per MySQL usando il portale di Azure

SI APPLICA A: Database di Azure per MySQL - Server singolo

Importante

Database di Azure per MySQL server singolo si trova nel percorso di ritiro. È consigliabile eseguire l'aggiornamento a Database di Azure per MySQL server flessibile. Per altre informazioni sulla migrazione a Database di Azure per MySQL server flessibile, vedere Che cosa accade a Database di Azure per MySQL server singolo?

Informazioni su come usare il portale di Azure per configurare e gestire la crittografia dei dati per il Database di Azure per MySQL.

Prerequisiti per l'interfaccia della riga di comando di Azure

  • È necessario disporre di una sottoscrizione di Azure e avere il ruolo di amministratore di tale sottoscrizione.

  • In Azure Key Vault creare un insieme di credenziali delle chiavi e una chiave da usare per una chiave gestita dal cliente.

  • L'insieme di credenziali delle chiavi deve avere le proprietà seguenti da usare come chiave gestita dal cliente:

    • Eliminazione temporanea

      az resource update --id $(az keyvault show --name \ <key_vault_name> -o tsv | awk '{print $1}') --set \ properties.enableSoftDelete=true
      
    • Ripulitura protetta

      az keyvault update --name <key_vault_name> --resource-group <resource_group_name>  --enable-purge-protection true
      
    • Giorni di conservazione impostati su 90 giorni

      az keyvault update --name <key_vault_name> --resource-group <resource_group_name>  --retention-days 90
      
  • Per essere usata come chiave gestita dal cliente, la chiave deve disporre degli attributi seguenti:

    • Nessuna data di scadenza
    • Non disabilitato
    • Eseguire operazioni get, wrap, unwrap
    • Attributo recoverylevel impostato su Ripristinabile (questa operazione richiede l'eliminazione temporanea abilitata con il periodo di conservazione impostato su 90 giorni)
    • È abilitata la protezione della rimozione

    È possibile verificare gli attributi precedenti della chiave usando il comando seguente:

    az keyvault key show --vault-name <key_vault_name> -n <key_name>
    
  • Il Database di Azure per MySQL - Il server singolo deve essere nel piano tariffario Per utilizzo generico o Ottimizzato per la memoria e per l'archiviazione per utilizzo generico v2. Prima di continuare, vedere limitazioni per la crittografia dei dati con chiavi gestite dal cliente.

Impostare le autorizzazioni appropriate per le operazioni delle chiavi

  1. In Key Vault selezionare Criteri di accesso>Aggiungi criteri di accesso.

    Screenshot of Key Vault, with Access policies and Add Access Policy highlighted

  2. Selezionare Autorizzazioni chiave e selezionare Get, Wrap, Unwrap e Principal, ovvero il nome del server MySQL. Se l'entità server non è disponibile nell'elenco delle entità esistenti, è necessario registrarla. Quando si tenta di configurare la crittografia dei dati per la prima volta, viene richiesto di registrare l'entità server e l'entità server non riesce.

    Access policy overview

  3. Seleziona Salva.

Impostare la crittografia dei dati per Database di Azure per MySQL

  1. In Database di Azure per MySQL selezionare Crittografia dati per configurare la chiave gestita dal cliente.

    Screenshot of Azure Database for MySQL, with Data encryption highlighted

  2. È possibile selezionare un insieme di credenziali delle chiavi e una coppia di chiavi oppure immettere un identificatore di chiave.

    Screenshot of Azure Database for MySQL, with data encryption options highlighted

  3. Seleziona Salva.

  4. Per assicurarsi che tutti i file (inclusi i file temporanei) siano completamente crittografati, riavviare il server.

Uso della crittografia dei dati per il ripristino o i server di replica

Una volta eseguita la crittografia di Database di Azure per MySQL con una chiave gestita dal cliente archiviata in Key Vault, viene crittografata anche qualsiasi nuova copia creata del server. È possibile eseguire questa nuova copia tramite un'operazione di ripristino locale o geografico oppure tramite un'operazione di replica (area locale/interarea). Pertanto, per un server MySQL crittografato, è possibile usare la procedura seguente per creare un server ripristinato crittografato.

  1. Nel server selezionare Panoramica>Ripristino.

    Screenshot of Azure Database for MySQL, with Overview and Restore highlighted

    In alternativa, per un server abilitato per la replica, nell'intestazione Impostazioni selezionare Replica.

    Screenshot of Azure Database for MySQL, with Replication highlighted

  2. Al termine dell'operazione di ripristino, il nuovo server creato viene crittografato con la chiave del server primario. Tuttavia, le funzionalità e le opzioni nel server sono disabilitate e il server non è accessibile. Ciò impedisce la manipolazione dei dati, perché all'identità del nuovo server non è ancora stata concessa l'autorizzazione per accedere all'insieme di credenziali delle chiavi.

    Screenshot of Azure Database for MySQL, with Inaccessible status highlighted

  3. Per rendere accessibile il server, riconvalidare la chiave nel server ripristinato. Selezionare Chiave riconvalida crittografia> dati.

    Nota

    Il primo tentativo di riconvalida avrà esito negativo perché all'entità servizio del nuovo server deve essere assegnato l'accesso all'insieme di credenziali delle chiavi. Per generare l'entità servizio, selezionare Riconvalida chiave, che visualizzerà un errore ma genera l'entità servizio. Successivamente, fare riferimento a questi passaggi in precedenza in questo articolo.

    Screenshot of Azure Database for MySQL, with revalidation step highlighted

    Sarà necessario concedere all'insieme di credenziali delle chiavi l'accesso al nuovo server. Per altre informazioni, vedere Assegnare un criterio di accesso a Key Vault.

  4. Dopo aver registrato l'entità servizio, riconvalidare la chiave e il server riprende la normale funzionalità.

    Screenshot of Azure Database for MySQL, showing restored functionality

Passaggi successivi