Kasus khusus untuk mengenkripsi koneksi ke SQL Server

Komputer klien harus mempercayai sertifikat server sehingga klien dapat meminta enkripsi SSL, dan sertifikat harus sudah ada di server. Skenario paling umum untuk enkripsi SQL Server melibatkan lingkungan yang:

  • Memaksa enkripsi untuk semua koneksi klien masuk ke SQL Server.
  • Gunakan sertifikat dari otoritas sertifikasi komersial publik yang sudah dipercaya Windows. Sertifikat akar yang sesuai untuk CA diinstal di penyimpanan sertifikat Otoritas Sertifikasi Akar Tepercaya di semua komputer di jaringan Anda.

Dalam skenario ini, Anda tidak perlu melakukan langkah tambahan untuk enkripsi yang berhasil setelah mengonfigurasi SQL Server untuk enkripsi sesuai prosedur yang dijelaskan dalam Mengonfigurasi SQL Server untuk Enkripsi. Artikel ini menyediakan prosedur untuk mengenkripsi koneksi ke SQL Server untuk skenario yang kurang umum yang tidak tercakup dalam Mengonfigurasi SQL Server untuk Enkripsi.

Catatan

Untuk daftar lengkap peserta dalam Program Akar Tepercaya Microsoft, lihat Daftar Peserta - Program Akar Tepercaya Microsoft.

Gunakan sertifikat yang dikeluarkan oleh otoritas sertifikat komersial publik dan hanya beberapa klien yang memerlukan koneksi terenkripsi

  1. Konfigurasikan sertifikat di SQL Server sesuai prosedur yang didokumenkan dalam Mengonfigurasi SQL Server untuk menggunakan sertifikat.
  2. Tentukan kata kunci enkripsi dalam properti koneksi ke Ya atau Benar. Misalnya, jika Anda menggunakan Microsoft ODBC Driver untuk SQL Server, string koneksi harus menentukan Encrypt=yes;.

Menggunakan sertifikat yang dikeluarkan oleh CA internal atau dibuat dengan menggunakan New-SelfSignedCertificate atau makecert

Skenario 1: Anda ingin mengenkripsi semua koneksi ke SQL Server

Setelah menyelesaikan kedua prosedur yang didokumentasikan di Langkah 1: Konfigurasikan SQL Server untuk menggunakan sertifikat dan Langkah 2: Mengonfigurasi pengaturan enkripsi di SQL Server yang didokumentasikan dalam Mengonfigurasi SQL Server untuk Enkripsi, gunakan salah satu opsi berikut untuk mengonfigurasi aplikasi klien Anda untuk enkripsi.

Opsi 1: Konfigurasikan aplikasi klien ke Sertifikat Server Kepercayaan. Pengaturan ini akan menyebabkan klien melewati langkah yang memvalidasi sertifikat server dan melanjutkan proses enkripsi. Misalnya, jika Anda menggunakan SQL Server Management Studio, Anda bisa memilih Percayai Sertifikat Server pada halaman Opsi.

Opsi 2: Pada setiap klien, tambahkan otoritas penerbit sertifikat ke penyimpanan otoritas akar tepercaya dengan melakukan langkah-langkah berikut:

  1. Ekspor sertifikat dari komputer yang berjalan SQL Server dengan menggunakan prosedur yang didokumenkan dalam Ekspor sertifikat server.
  2. Impor sertifikat dengan menggunakan prosedur yang didokumentasikan dalam Menambahkan Otoritas Sertifikasi (CA) privat ke penyimpanan sertifikat Otoritas Sertifikasi Akar Tepercaya.

Skenario 2: Hanya beberapa klien yang memerlukan koneksi terenkripsi

Setelah mengonfigurasi sertifikat untuk SQL Server digunakan seperti yang didokumentasikan di Langkah 1: Konfigurasikan SQL Server untuk menggunakan sertifikat dalam Mengonfigurasi SQL Server untuk Enkripsi, gunakan salah satu opsi berikut untuk mengonfigurasi aplikasi klien Anda untuk enkripsi:

Opsi 1: Konfigurasikan aplikasi klien untuk mempercayai sertifikat server dan tentukan kata kunci enkripsi di properti koneksi ke Ya atau Benar. Misalnya, jika Anda menggunakan Microsoft ODBC Driver untuk SQL Server, string koneksi harus menentukan Encrypt=yes;Trust Server Certificate =Yes;.

Untuk informasi selengkapnya tentang sertifikat dan enkripsi server, lihat Menggunakan TrustServerCertificate.

Opsi 2: Pada setiap klien, tambahkan otoritas penerbit sertifikat ke penyimpanan otoritas akar tepercaya dan tentukan parameter enkripsi ke Ya dalam string koneksi:

  1. Ekspor sertifikat dari komputer yang berjalan SQL Server dengan menggunakan prosedur yang didokumenkan dalam Mengekspor sertifikat dari komputer yang menjalankan SQL Server.
  2. Impor sertifikat.
  3. Tentukan kata kunci enkripsi dalam properti koneksi ke Ya atau Benar. Misalnya, jika Anda menggunakan Microsoft OLEDB Driver untuk SQL Server, string koneksi harus menentukan Gunakan Enkripsi untuk Data = True;

Gunakan sertifikat yang ditandatangani sendiri yang dibuat secara otomatis oleh SQL Server

Skenario 1: Anda ingin mengenkripsi semua koneksi masuk ke SQL Server

  1. Aktifkan enkripsi pada SQL Server menggunakan prosedur Langkah 2: Mengonfigurasi pengaturan enkripsi di SQL Server yang didokumenkan dalam Mengonfigurasi SQL Server untuk enkripsi.

  2. Konfigurasikan aplikasi klien untuk mempercayai sertifikat server. Mempercayai sertifikat server akan menyebabkan klien melewati langkah yang memvalidasi sertifikat server dan melanjutkan proses enkripsi. Misalnya, jika Anda menggunakan SQL Server Management Studio, Anda bisa memilih Percayai Sertifikat Server pada halaman Opsi.

Skenario 2: Hanya beberapa klien yang memerlukan koneksi terenkripsi

Konfigurasikan aplikasi klien untuk mempercayai sertifikat server dan tentukan kata kunci enkripsi di properti koneksi ke Ya atau Benar. Misalnya, jika Anda menggunakan Microsoft ODBC Driver untuk SQL Server, string koneksi harus menentukan Encrypt=yes;Trust Server Certificate =Yes;.

Peringatan

Koneksi SSL yang dienkripsi dengan menggunakan sertifikat yang ditandatangani sendiri tidak memberikan keamanan yang kuat karena panjang kunci dalam sertifikat yang ditandatangani sendiri lebih pendek dari kunci dalam sertifikat yang dihasilkan oleh CA. Koneksi ini rentan terhadap serangan man-in-the-middle. Anda tidak boleh mengandalkan SSL menggunakan sertifikat yang ditandatangani sendiri di lingkungan produksi atau di server yang terhubung ke Internet.

Catatan

Tidak ada konfigurasi tambahan yang diperlukan pada SQL Server untuk skenario ini.

Langkah berikutnya