Utilizzare file di backup di SQL Server criptati

Database Migration Service è completamente compatibile con i backup di SQL Server criptati. Puoi caricare la chiave di crittografia su Google Cloud in modo che Database Migration Service possa decriptare in sicurezza i tuoi dati e caricarli nell'istanza di destinazione Cloud SQL per SQL Server senza compromettere la sicurezza dei dati.

Se vuoi utilizzare file di backup criptati, devi criptare ogni file di backup (completo, differenziale, log delle transazioni) che utilizzi per un database specifico incluso nella migrazione. In altre parole, se vuoi criptare il file di backup completo, devi criptare anche il file di backup differenziale e i file dei log delle transazioni che utilizzi per quel database. Tutti i file di backup devono essere criptati con la stessa chiave.

La crittografia dei backup viene valutata per database. Ad esempio, se esegui la migrazione di due database dall'istanza SQL Server di origine: my-business-database e my-other-database, puoi utilizzare i backup criptati in modo indipendente per my-business-database, my-other-database o per entrambi i database.

Per utilizzare i backup criptati per la migrazione, svolgi i seguenti passaggi:

  1. Esegui il backup dell'istanza SQL Server di origine e utilizza le funzionalità di crittografia. Salva le chiavi di crittografia in un luogo sicuro per caricarle in un secondo momento su Cloud Storage. Consulta Crittografia dei backup nella documentazione di Microsoft.

  2. Carica le chiavi di crittografia in un bucket Cloud Storage.

  3. Solo Google Cloud CLI: crea un file di mappatura in formato JSON per associare le chiavi di crittografia ai relativi database pertinenti inclusi nel job di migrazione. Il file di mappatura è un array di oggetti che rappresentano ciascuno le mappature per un singolo database. File di configurazione di esempio:

    [
    {
      "database": "db1",
      "encryptionOptions": {
        "certPath": "Path to certificate 1",
        "pvkPath": "Path to certificate private key 1",
        "pvkPassword": "Private key password 1"
      }
    },
    {
      "database": "db2",
      "encryptionOptions": {
        "certPath": "Path to certificate 2",
        "pvkPath": "Path to certificate private key 2",
        "pvkPassword": "Private key password 2"
      }
    }
    ]
    

    Dove:

    • database è l'identificatore del database. L'identificatore deve corrispondere ai nomi delle cartelle del database in Cloud Storage.
    • certPath, pvkPath e pvkPassword sono i percorsi di Cloud Storage ai file del certificato nel formato gs://BUCKET_NAME/OBJECT_NAME. Ad esempio: gs://my-bucket-name/certificate-folder/certificate-key-file1. Per ulteriori informazioni, consulta Spazi dei nomi degli oggetti nella documentazione di Cloud Storage.
  4. Fornisci i percorsi Cloud Storage delle chiavi di crittografia quando crei il job di migrazione.

  5. Quando crei altri file di backup (il file di backup differenziale o i file di log delle transazioni), assicurati di criptarli con la stessa chiave di crittografia utilizzata per il backup completo.