Kembangkan aplikasi menggunakan Always Encrypted dengan enklave yang aman

Berlaku untuk: SQL Server 2019 (15.x) dan yang lebih baru - Hanya Windows Azure SQL Database

Always Encrypted dengan enklave aman memperluas Always Encrypted untuk mengaktifkan fungsionalitas kueri aplikasi yang lebih kaya pada kolom database sensitif terenkripsi. Ini memanfaatkan teknologi enklave yang aman untuk memungkinkan pelaksana kueri di Mesin Database mendelegasikan komputasi pada kolom terenkripsi ke enklave aman di dalam proses Mesin Database.

Prasyarat

Lingkungan Anda perlu memenuhi persyaratan berikut untuk mendukung Always Encrypted dengan enklave aman.

  • Instans SQL Server atau server database Anda di Azure SQL Database harus dikonfigurasi dengan benar untuk mendukung enklave dan pengesahan, jika berlaku/diperlukan. Untuk informasi selengkapnya, lihat Menyiapkan enklave dan pengesahan aman.
  • Pastikan aplikasi Anda:
    • Menggunakan versi driver klien mendukung Always Encrypted dengan enklave aman.

    • Mengaktifkan Always Encrypted saat menyambungkan ke database Anda.

    • Mengatur protokol pengesahan, yang menentukan apakah driver klien harus membuktikan enklave sebelum mengirimkan kueri enklave, dan jika demikian, layanan pengesahan mana yang harus digunakannya. Versi driver terbaru mendukung protokol pengesahan berikut:

      • Microsoft Azure Attestation - memberlakukan pengesahan menggunakan Microsoft Azure Attestation.
      • Host Guardian Service - memberlakukan pengesahan menggunakan Host Guardian Service.
      • Tidak ada - memungkinkan penggunaan enklave tanpa pengesahan.

      Tabel di bawah ini menentukan protokol pengesahan yang valid untuk produk SQL dan teknologi enklave tertentu:

      Produk Teknologi Enklave Protokol pengesahan yang didukung
      SQL Server 2019 (15.x) dan yang lebih baru Enklave VBS Layanan Wali Host, Tidak Ada
      Database Azure SQL Enklave SGX (dalam database seri DC) Microsoft Azure Attestation
      Database Azure SQL Enklave VBS Tidak ada
    • Mengatur URL pengesahan yang valid untuk lingkungan Anda, jika Anda menggunakan pengesahan.

Driver klien untuk Always Encrypted dengan enklave aman

Untuk mengembangkan aplikasi menggunakan Always Encrypted dengan enklave aman, Anda memerlukan versi driver klien SQL yang mendukung enklave aman. Driver klien memainkan peran kunci berikut:

  • Sebelum mengirimkan kueri yang menggunakan enklave aman ke SQL Server atau Azure SQL Database untuk eksekusi, driver memulai pengesahan enklave (jika dikonfigurasi) untuk memverifikasi enklave aman dapat dipercaya dan dapat digunakan dengan aman untuk memproses data sensitif. Untuk informasi selengkapnya tentang pengesahan, lihat Pengesahan Enklave Aman.
  • Driver klien membuat sesi aman dengan enklave dengan menegosiasikan rahasia bersama.
  • Driver menggunakan rahasia bersama untuk mengenkripsi kunci enkripsi kolom yang diperlukan enklave untuk memproses kueri, dan mengirim kunci ke SQL Server, yang meneruskannya ke enklave aman yang mendekripsi kunci.
  • Terakhir, driver mengirimkan kueri untuk eksekusi, yang memicu komputasi di dalam enklave aman.

Driver klien berikut mendukung Always Encrypted dengan enklave aman:

Baca juga