SQL Managed Instance dengan kunci yang dikelola pelanggan

Azure SQL Managed Instance
Azure Key Vault
Azure Private Link

Artikel ini menjelaskan bagaimana Anda dapat mengelola kunci Enkripsi Data Transparan (TDE) Anda sendiri untuk instans terkelola SQL dalam grup failover otomatis lintas wilayah dengan menggunakan Azure Key Vault.

Arsitektur

Diagram that shows an architecture for managing TDE keys.

Unduh file Visio arsitektur ini.

Untuk redundansi kunci TDE yang lebih besar, Azure SQL Managed Instance dikonfigurasi untuk menggunakan brankas kunci di wilayahnya sendiri sebagai primer dan brankas kunci di wilayah jarak jauh sebagai sekunder.

Instans brankas kunci sekunder, saat berada di wilayah jarak jauh, memiliki titik akhir privat di wilayah yang sama dengan instans terkelola SQL. Jadi, sejauh menyangkut instans terkelola SQL, permintaan yang dibuat ke brankas kunci primer dan sekunder secara logis dalam jaringan virtual dan wilayah yang sama. Desain ini memungkinkan firewall atau aturan kelompok keamanan jaringan yang lebih mudah. Banyak organisasi menggunakan titik akhir privat daripada mengakses titik akhir publik. Kami menyarankan agar Anda menggunakan titik akhir privat.

Aliran data

  1. Setiap 10 menit, SQL Managed Instance memeriksa untuk memastikan dapat mengakses pembungkus TDE di brankas kunci yang didefinisikan sebagai primer.

  2. Jika brankas kunci utama SQL Managed Instance menjadi tidak tersedia, instans tersebut memeriksa brankas kunci yang ditetapkan sebagai sekunder. Jika brankas kunci tersebut juga tidak tersedia, SQL Managed Instance menandai database sebagai "tidak dapat diakses."

Komponen

  • Key Vault adalah layanan cloud untuk menyimpan dan mengakses rahasia dengan keamanan yang ditingkatkan. Dalam arsitektur ini, ini digunakan untuk menyimpan kunci yang digunakan oleh TDE. Anda juga dapat menggunakannya untuk membuat kunci.
  • SQL Managed Instance adalah instans terkelola di Azure yang didasarkan pada versi stabil terbaru SQL Server. Dalam arsitektur ini, proses manajemen kunci diterapkan ke data yang disimpan di SQL Managed Instance.
  • Azure Private Link memungkinkan Anda mengakses layanan Azure PaaS dan layanan yang dihosting Azure melalui titik akhir privat di jaringan virtual Anda.

Alternatif

  • Alih-alih menggunakan kunci TDE yang dikelola pelanggan, Anda dapat menggunakan kunci TDE yang dikelola layanan. Saat Anda menggunakan kunci yang dikelola layanan, Microsoft menangani pengamanan dan memutar kunci. Seluruh proses diabstraksi jauh dari Anda.

  • Alternatif untuk memiliki brankas kunci di dua wilayah adalah hanya memilikinya di satu wilayah. SQL Managed Instance dapat mengakses kunci dari vault yang berada di wilayah lain. Anda masih dapat menggunakan titik akhir privat. Lalu lintas ke Key Vault rendah dan jarang, sehingga latensi apa pun tidak terlihat. SQL Managed Instance hanya meminta vault untuk melihat apakah kunci ada. Ini tidak menyalin materi.

Detail skenario

Saat Anda menggunakan kunci yang dikelola pelanggan (CMK), juga disebut sebagai bawa kunci Anda sendiri (BYOK), Anda bertanggung jawab atas keamanan, ketersediaan, dan rotasi opsional kunci. Tanggung jawab ini sangat penting karena jika kunci hilang, database dan cadangan juga hilang secara permanen. Artikel ini menjelaskan proses manajemen kunci dan menyediakan opsi sehingga Anda memiliki informasi yang Anda butuhkan untuk membuat keputusan berdasarkan informasi tentang proses terbaik untuk bisnis Anda.

Kemungkinan kasus penggunaan

Banyak organisasi memiliki kebijakan yang mengharuskan sertifikat atau kunci enkripsi dibuat dan dikelola secara internal. Jika organisasi Anda memiliki kebijakan serupa, arsitektur ini mungkin berlaku untuk Anda. Jika pelanggan Anda memerlukan manajemen internal item ini, arsitektur juga mungkin berlaku untuk Anda. Jika situasi tersebut tidak berlaku, pertimbangkan untuk menggunakan kunci yang dikelola sistem.

Pertimbangan

Pertimbangan ini mengimplementasikan pilar Azure Well-Architected Framework, yang merupakan serangkaian tenet panduan yang dapat digunakan untuk meningkatkan kualitas beban kerja. Untuk informasi selengkapnya, lihat Microsoft Azure Well-Architected Framework.

Rekomendasi umum

Lihat artikel ini:

Manajemen kunci

Metode rotasi kunci Anda akan berbeda tergantung pada apa yang Anda gunakan untuk membuat kunci asimetris TDE Anda. Ketika Anda membawa kunci pembungkus TDE Anda sendiri, Anda harus memutuskan bagaimana Anda akan membuat kunci ini. Pilihan Anda adalah:

  • Gunakan Key Vault untuk membuat kunci. Opsi ini memastikan bahwa materi kunci privat tidak pernah meninggalkan Key Vault dan tidak dapat dilihat oleh manusia atau sistem apa pun. Kunci privat tidak dapat diekspor, tetapi dapat dicadangkan dan dipulihkan ke brankas kunci lain. Poin ini penting. Untuk memiliki materi kunci yang sama di beberapa brankas kunci, seperti yang diperlukan oleh desain ini, Anda harus menggunakan fitur pencadangan dan pemulihan. Opsi ini memiliki beberapa batasan. Kedua brankas kunci harus berada dalam geografi dan langganan Azure yang sama. Jika tidak, pemulihan tidak akan berfungsi. Satu-satunya cara untuk mengatasi batasan ini adalah dengan menyimpan brankas kunci dalam langganan terpisah dan memindahkan satu langganan ke wilayah lain.

  • Buat kunci asimetris secara offline dengan menggunakan utilitas seperti OpenSSL lalu impor kunci ke Key Vault. Saat mengimpor kunci ke Key Vault, Anda dapat menandainya sebagai dapat diekspor. Jika Anda melakukannya, Anda dapat membuang kunci setelah mengimpornya ke Key Vault atau Anda dapat menyimpannya di tempat lain, seperti lokal atau di brankas kunci lain. Opsi ini memberi Anda fleksibilitas terbanyak. Namun, itu bisa menjadi yang paling tidak aman jika Anda tidak memastikan kunci tidak masuk ke tangan yang salah. Sistem yang menghasilkan kunci dan metode yang digunakan untuk menempatkan kunci di Key Vault tidak dikontrol oleh Azure. Anda dapat mengotomatiskan proses ini dengan menggunakan Azure DevOps, Azure Automation, atau alat orkestrasi lainnya.

  • Gunakan modul keamanan perangkat keras (HSM) lokal yang didukung untuk menghasilkan kunci Anda. Dengan menggunakan HSM yang didukung, Anda dapat mengimpor kunci ke Key Vault dengan keamanan yang ditingkatkan. Batasan geografi yang sama yang dijelaskan sebelumnya tidak berlaku saat Anda menggunakan HSM. Opsi ini memberikan tingkat keamanan yang tinggi untuk kunci Anda karena materi kunci berada di tiga tempat terpisah (dua brankas kunci di Azure dan lokal). Opsi ini juga memberikan tingkat fleksibilitas yang sama, jika Anda menggunakan HSM yang didukung.

Ketersediaan

Saat Anda menambahkan Key Vault ke arsitektur Anda, itu menjadi komponen penting. Setidaknya salah satu brankas kunci dalam desain harus dapat diakses. Selain itu, kunci yang diperlukan untuk TDE harus dapat diakses. Azure Monitor Insights menyediakan pemantauan komprehensif Key Vault. Untuk informasi selengkapnya, lihat Memantau layanan brankas kunci Anda.

Keunggulan operasional

Keunggulan operasional mencakup proses operasi yang menyebarkan aplikasi dan membuatnya tetap berjalan dalam produksi. Untuk informasi selengkapnya, lihat Gambaran umum pilar keunggulan operasional.

Saat Anda berpindah dari kunci yang dikelola layanan ke kunci yang dikelola pelanggan, operasi Anda adalah:

DevOps

Anda dapat menggunakan Azure Pipelines di Azure DevOps untuk mengotomatiskan proses rotasi kunci.

Efisiensi kinerja

Efisiensi performa adalah kemampuan beban kerja Anda untuk diskalakan agar memenuhi permintaan yang diberikan oleh pengguna dengan cara yang efisien. Untuk informasi selengkapnya, lihat Gambaran umum pilar efisiensi performa.

Grup failover otomatis SQL Managed Instance berkinerja jauh lebih baik saat Anda menggunakan wilayah berpasangan.

SQL Managed Instance hanya memeriksa apakah kunci ada, dan hanya melakukan itu setiap 10 menit. Oleh karena itu, SQL Managed Instances tidak memerlukan afinitas wilayah dengan Key Vault. Lokasi kunci TDE Anda tidak berpengaruh pada performa.

Skalabilitas

Dalam hal mengelola kunci TDE Anda, penskalakan tidak menjadi perhatian. Ukuran dan frekuensi permintaan sangat kecil sehingga Anda tidak perlu menskalakan.

Keamanan

Keamanan memberikan jaminan terhadap serangan yang disukai dan penyalahgunaan data dan sistem berharga Anda. Untuk informasi selengkapnya, lihat Gambaran Umum pilar keamanan.

Pertimbangan keamanan terbesar adalah memastikan bahwa Anda menjaga kunci pembungkus TDE Anda tetap aman dan selalu tersedia untuk SQL Managed Instances. Database apa pun yang dienkripsi melalui TDE tidak dapat diakses jika tidak dapat mengakses kunci yang diperlukan di Key Vault. Jika Anda menggunakan kunci yang dikelola layanan, Anda tidak perlu khawatir tentang pertimbangan ini.

Ketahanan

Setiap instans terkelola SQL dikonfigurasi untuk menggunakan dua brankas kunci. Jika kunci TDE utama instans terkelola SQL tidak tersedia atau tidak dapat diakses, instans mencoba menemukan kunci dengan thumbprint yang cocok di brankas kunci sekunder.

Pengoptimalan biaya

Untuk informasi tentang biaya tambahan dalam mengelola kunci TDE Anda sendiri, di luar biaya operasional tambahan, lihat sumber daya berikut:

Untuk informasi tentang komponen opsional, lihat sumber daya ini:

Menyebarkan skenario ini

Anda dapat menyebarkan skenario ini dengan menggunakan templat ARM ini:

Kontributor

Artikel ini sedang diperbarui dan dikelola oleh Microsoft. Ini awalnya ditulis oleh kontributor berikut.

Penulis utama:

Untuk melihat profil LinkedIn non-publik, masuk ke LinkedIn.

Langkah berikutnya