Putar pelindung Enkripsi Data Transparan (TDE)
BERLAKU UNTUK:
Azure SQL Database
Azure Synapse Analytics
Artikel ini menjelaskan rotasi kunci untuk server menggunakan pelindung TDE dari Azure Key Vault. Memutar Pelindung TDE logis untuk server berarti mengalihkan ke kunci asimetris yang melindungi database pada server. Rotasi kunci adalah operasi online dan hanya butuh beberapa detik untuk selesai, karena ini hanya mendeskripsi dan mengenkripsi ulang kunci enkripsi data database, bukan seluruh database.
Pertimbangan penting saat melakukan rotasi Pelindung TDE
- Ketika pelindung TDE diubah/dirotasi, cadangan lama database, termasuk file log cadangan, tidak diperbarui untuk menggunakan pelindung TDE terbaru. Untuk memulihkan backup yang dienkripsi dengan pelindung TDE dari Key Vault, pastikan bahwa material kunci tersedia untuk server target. Oleh karena itu, sebaiknya Anda menyimpan semua versi lama pelindung TDE di Azure Key Vault (AKV), sehingga cadangan database dapat dipulihkan.
- Bahkan saat beralih dari kunci yang dikelola pelanggan (CMK) ke kunci yang dikelola layanan, simpan semua kunci yang digunakan sebelumnya di AKV. Hal ini memastikan pencadangan database, termasuk file log cadangan, dapat dipulihkan dengan pelindung TDE yang disimpan di AKV.
- Selain cadangan lama, file log transaksi mungkin juga memerlukan akses ke Pelindung TDE yang lebih lama. Untuk menentukan apakah ada log yang tersisa yang masih memerlukan kunci yang lebih lama, setelah melakukan rotasi kunci, gunakan tampilan manajemen dinamis (DMV) sys.dm_db_log_info. DMV ini mengembalikan informasi pada file log virtual (VLF) dari log transantion bersama dengan sidik jari kunci enkripsi VLF.
- Kunci yang lebih lama harus disimpan di AKV dan tersedia untuk server berdasarkan periode retensi cadangan yang dikonfigurasi sebagai bagian belakang kebijakan retensi cadangan pada database. Ini membantu memastikan cadangan Retensi Jangka Panjang (LTR) di server masih dapat dipulihkan menggunakan kunci yang lebih lama.
Catatan
Kumpulan SQL khusus yang dijeda di Azure Synapse Analytics harus dilanjutkan sebelum putaran kunci.
Penting
Jangan menghapus versi kunci sebelumnya setelah rollover. Saat kunci di-roll over, beberapa data masih dienkripsi dengan kunci sebelumnya, seperti cadangan database yang lebih lama, file log cadangan dan file log transaksi.
Catatan
Artikel ini berlaku untuk Azure SQL Database, Azure SQL Managed Instance, dan Azure Synapse Analytics (kumpulan SQL khusus (sebelumnya SQL DW)). Untuk dokumentasi tentang Enkripsi Data Transparan untuk kumpulan SQL khusus di dalam ruang kerja Synapse, lihat enkripsi Azure Synapse Analytics.
Prasyarat
- Panduan cara ini mengasumsikan bahwa Anda sudah menggunakan kunci dari Azure Key Vault sebagai pelindung TDE untuk Azure SQL Database atau Azure Synapse Analytics. Lihat Enkripsi Data Transparan dengan Dukungan BYOK.
- Anda harus memiliki Azure PowerShell yang diinstal dan bekerja.
- [Direkomendasikan tetapi opsional] Buat material kunci untuk pelindung TDE dalam modul keamanan perangkat keras (HSM) atau penyimpanan kunci lokal terlebih dahulu, dan impor material kunci ke Azure Key Vault. Ikuti instruksi untuk menggunakan modul keamanan perangkat keras (HSM) dan Key Vault untuk belajar lebih banyak.
Untuk instruksi instalasi modul Az, lihat Instal Azure PowerShell. Untuk cmdlet tertentu, lihat AzureRM.Sql.
Penting
Modul PowerShell Azure Resource Manager (RM) masih didukung, tetapi semua pengembangan di masa mendatang adalah untuk modul Az.Sql. Modul AzureRM akan terus menerima perbaikan bug hingga setidaknya bulan Desember 2020. Argumen untuk perintah dalam modul Az dan dalam modul AzureRm secara substansial identik. Untuk informasi selengkapnya tentang kompatibilitas keduanya, lihat Memperkenalkan modul Azure PowerShell Az baru.
Putaran kunci manual
Putaran kunci manual menggunakan perintah berikut untuk menambah kunci baru sepenuhnya, yang bisa saja di bawah nama kunci baru atau bahkan key vault lainnya. Menggunakan dukungan pendekatan ini menambah kunci yang sama ke key vault yang berbeda untuk mendukung skenario geo-dr dan ketersediaan tinggi.
Catatan
Panjang gabungan untuk nama key vault dan nama kunci tidak boleh lebih dari 94 karakter.
Gunakan cmdlet Add-AzKeyVaultKey, Add-AzSqlServerKeyVaultKey, dan Set-AzSqlServerTransparentDataEncryptionProtector.
# add a new key to Key Vault
Add-AzKeyVaultKey -VaultName <keyVaultName> -Name <keyVaultKeyName> -Destination <hardwareOrSoftware>
# add the new key from Key Vault to the server
Add-AzSqlServerKeyVaultKey -KeyId <keyVaultKeyId> -ServerName <logicalServerName> -ResourceGroup <SQLDatabaseResourceGroupName>
# set the key as the TDE protector for all resources under the server
Set-AzSqlServerTransparentDataEncryptionProtector -Type AzureKeyVault -KeyId <keyVaultKeyId> `
-ServerName <logicalServerName> -ResourceGroup <SQLDatabaseResourceGroupName>
Alihkan mode pelindung TDE
Untuk mengalihkan mode pelindung TDE dari Microsoft-yang dikelola ke BYOK, gunakan cmdlet Set-AzSqlServerTransparentDataEncryptionProtector.
Set-AzSqlServerTransparentDataEncryptionProtector -Type AzureKeyVault ` -KeyId <keyVaultKeyId> -ServerName <logicalServerName> -ResourceGroup <SQLDatabaseResourceGroupName>Untuk mengalihkan mode pelindung TDE dari BYOK ke Microsoft-yang dikelola, gunakan cmdlet Set-AzSqlServerTransparentDataEncryptionProtector.
Set-AzSqlServerTransparentDataEncryptionProtector -Type ServiceManaged ` -ServerName <logicalServerName> -ResourceGroup <SQLDatabaseResourceGroupName>
Langkah berikutnya
jika ada risiko keamanan, pelajari cara menghapus pelindung TDE berpotensi membahayakan: Hapus kunci yang berpotensi membahayakan.
Mulai dengan integrasi Azure Key Vault dan dukungan Bring Your Own Key untuk TDE: Aktifkan TDE menggunakan kunci Anda sendiri dari Key Vault menggunakan PowerShell.