Migrasikan data ke atau dari kolom menggunakan Always Encrypted dengan Wizard Ekspor dan Impor SQL Server
Berlaku untuk:SQL ServerAzure SQL DatabaseAzure SQL Managed Instance
Wizard Impor dan Ekspor SQL Server adalah alat yang memungkinkan Anda menyalin data dari sumber ke tujuan. Dokumen ini menjelaskan cara menggunakan Panduan Impor dan Ekspor SQL Server jika sumber dan/atau tujuan adalah database SQL Server yang berisi kolom yang dilindungi dengan Always Encrypted.
Skenario migrasi
Dengan Wizard Impor dan Ekspor SQL Server, Anda bisa menerapkan skenario berikut untuk memigrasikan data ke atau dari kolom terenkripsi.
Mengenkripsi data teks biasa pada migrasi
Jika sumber data Anda berisi data teks biasa dan tujuan Anda adalah database SQL Server yang berisi kolom terenkripsi, Anda dapat menggunakan Wizard Impor dan Ekspor SQL Server untuk mengambil data teks biasa dari sumber, mengenkripsinya dan menyalin data terenkripsi (ciphertext) ke kolom terenkripsi dalam database tujuan. Untuk skenario migrasi ini, sumber data dapat berupa penyimpanan data apa pun yang didukung Wizard Impor dan Ekspor SQL Server. Misalnya, file, database SQL Server, atau database di sistem database lain.
Untuk memastikan Wizard Impor dan Ekspor SQL Server dapat mengenkripsi data, Anda perlu mengaktifkan Always Encrypted untuk koneksi database tujuan dan Anda harus memiliki akses ke kunci yang melindungi data di kolom database tujuan. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan Always Encrypted untuk koneksi database dan Izin untuk mengenkripsi atau mendekripsi data selama migrasi.
Mendekripsi data terenkripsi pada migrasi
Jika Anda memigrasikan data yang disimpan dalam kolom database terenkripsi dalam database SQL Server, Anda dapat mengonfigurasi Wizard Impor dan Ekspor SQL Server untuk mendekripsi data dan menyalin data (teks biasa) yang didekripsi ke tujuan, yang dapat berupa penyimpanan data apa pun yang didukung Wizard Impor dan Ekspor SQL Server, misalnya file, database SQL Server atau database di sistem database lain.
Untuk memastikan Wizard Impor dan Ekspor SQL Server dapat mendekripsi data, Anda perlu mengaktifkan Always Encrypted untuk koneksi database sumber dan Anda harus memiliki akses ke kunci yang melindungi data di kolom database sumber. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan Always Encrypted untuk koneksi database dan Izin untuk mengenkripsi atau mendekripsi data selama migrasi.
Mengenkripsi ulang data pada migrasi
Jika Anda menyalin data dari kolom terenkripsi dalam database SQL Server sumber ke kolom terenkripsi dalam database SQL Server yang sama atau lain, Anda dapat mengonfigurasi Wizard Impor dan Ekspor SQL Server untuk mendekripsi data setelah mengambilnya dari sumber dan mengenkripsi ulang sebelum menyisipkannya ke dalam kolom terenkripsi dalam database tujuan. Gunakan metode ini jika skema kolom target (misalnya, jenis data kolom, jenis enkripsi, dan kunci enkripsi kolom) berbeda dari skema kolom sumber.
Untuk memastikan Wizard Impor dan Ekspor SQL Server dapat mengenkripsi dan mendekripsi data, Anda perlu mengaktifkan Always Encrypted untuk koneksi database sumber dan koneksi database tujuan, dan Anda harus memiliki akses ke kunci yang melindungi data di kolom database sumber dan target. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan Always Encrypted untuk koneksi database dan Izin untuk mengenkripsi atau mendekripsi data selama migrasi.
Menjaga data tetap terenkripsi selama migrasi
Jika Anda menyalin data dari kolom terenkripsi dalam database SQL Server sumber ke kolom terenkripsi dalam database SQL Server yang sama atau lainnya, dan kolom target menggunakan persis skema (termasuk jenis data, jenis enkripsi, dan kunci enkripsi kolom yang sama) sebagai kolom sumber, Anda dapat mengonfigurasi Wizard Impor dan Ekspor SQL Server untuk mengambil ciphertext dari kolom sumber dan menyisipkan data terenkripsi (ciphertext) ke dalam kolom terenkripsi di database SQL Server target.
Untuk skenario ini, Anda dapat menggunakan penyedia data apa pun yang mendukung SQL Server untuk menyambungkan ke sumber atau database SQL Server tujuan. Jika Anda menggunakan penyedia yang mendukung Always Encrypted untuk menyambungkan ke database tujuan, Anda perlu memastikan Always Encrypted dinonaktifkan untuk koneksi database. Untuk informasi selengkapnya, lihat Mengaktifkan dan menonaktifkan Always Encrypted untuk koneksi database.
Anda juga perlu memastikan prinsipal database (pengguna) yang digunakan Wizard Impor dan Ekspor SQL Server untuk menyambungkan ke database tujuan dikonfigurasi dengan ALLOW_ENCRYPTED_VALUE_MODIFICATIONS
opsi diatur ke ON
. Opsi ini menekan pemeriksaan metadata kriptografi pada server dalam operasi penyalinan massal, yang memungkinkan wizard menyisipkan data terenkripsi secara massal ke database tujuan tanpa mendekripsi data. Untuk informasi selengkapnya, lihat Memuat Data Terenkripsi Secara Massal ke Kolom yang Dilindungi oleh Always Encrypted.
Mengaktifkan dan menonaktifkan Always Encrypted untuk koneksi database
Jika skenario migrasi Anda mengharuskan Wizard Impor dan Ekspor SQL Server dapat mengenkripsi dan/atau mendekripsi data, Anda perlu mengonfigurasi koneksi database SQL Server sumber dan/atau koneksi database SQL Server tujuan menggunakan penyedia data yang mendukung Always Encrypted. Anda juga perlu mengaktifkan Always Encrypted untuk koneksi database sumber dan/atau tujuan.
Anda dapat menggunakan penyedia data apa pun untuk koneksi jika Anda tidak memerlukan wizard untuk mengenkripsi atau mendekripsi data pada koneksi tersebut.
Penyedia data berikut di Wizard Impor dan Ekspor SQL Server mendukung Always Encrypted.
- Penyedia Data .NET Framework untuk SQL Server
- Pastikan komputer tempat wizard berjalan menggunakan .NET Framework 4.6.1 atau yang lebih baru.
- Untuk mengaktifkan Always Encrypted untuk koneksi, atur
Column Encryption Setting
keEnabled
di properti koneksi. Untuk menonaktifkan Always Encrypted, aturColumn Encryption Setting
keDisabled
. Untuk informasi selengkapnya, lihat Menyambungkan ke SQL Server dengan Penyedia Data .NET Framework untuk SQL Server dan Mengaktifkan Always Encrypted untuk Kueri Aplikasi.
- Penyedia Data .NET Framework untuk ODBC.
- Instal Microsoft ODBC Driver 13.1 atau yang lebih baru.
- Untuk mengaktifkan Always Encrypted untuk koneksi, atur
Column Encryption
keEnabled
di properti koneksi. Untuk menonaktifkan Always Encrypted, aturColumn Encryption
keDisabled
. Untuk informasi selengkapnya, lihat Menyambungkan ke SQL Server dengan driver ODBC untuk SQL Server dan Mengaktifkan Always Encrypted dalam Aplikasi ODBC.
- Untuk mengaktifkan Always Encrypted untuk koneksi, atur
- Instal Microsoft ODBC Driver 13.1 atau yang lebih baru.
Izin untuk mengenkripsi atau mendekripsi data selama migrasi
Untuk mengenkripsi atau mendekripsi data yang disimpan dalam database sumber atau tujuan SQL Server, Anda memerlukan izin LIHAT DEFINISI KUNCI MASTER KOLOM APA PUN dan LIHAT DEFINISI KUNCI ENKRIPSI KOLOM APA PUN di database sumber. Anda juga memerlukan izin penyimpanan kunci untuk mengakses dan menggunakan kunci master kolom Anda. Untuk informasi terperinci tentang izin penyimpanan kunci yang diperlukan untuk operasi manajemen kunci, buka Membuat dan menyimpan kunci master kolom untuk Always Encrypted dan temukan bagian yang relevan untuk penyimpanan kunci Anda.
Langkah berikutnya
- Kolom kueri menggunakan Always Encrypted dengan SQL Server Management Studio
- Mengembangkan aplikasi menggunakan Always Encrypted
Baca juga
Saran dan Komentar
https://aka.ms/ContentUserFeedback.
Segera hadir: Sepanjang tahun 2024 kami akan menghentikan penggunaan GitHub Issues sebagai mekanisme umpan balik untuk konten dan menggantinya dengan sistem umpan balik baru. Untuk mengetahui informasi selengkapnya, lihat:Kirim dan lihat umpan balik untuk