Keamanan Transportasi - Pencerminan Database - Ketersediaan AlwaysOn

Berlaku untuk:SQL Server

Keamanan transportasi melibatkan autentikasi dan, secara opsional, enkripsi pesan yang bertukar antara database. Untuk pencerminan database dan grup ketersediaan AlwaysOn, autentikasi dan enkripsi dikonfigurasi pada titik akhir pencerminan database. Untuk pengenalan titik akhir pencerminan database, lihat Titik Akhir Pencerminan Database (SQL Server).

Dalam Topik ini:

Autentikasi

Autentikasi adalah proses memverifikasi bahwa pengguna adalah siapa yang diklaim pengguna. Koneksi antara titik akhir pencerminan database memerlukan autentikasi. Koneksi permintaan dari mitra atau saksi, jika ada, harus diautentikasi.

Jenis autentikasi yang digunakan oleh instans server untuk pencerminan database atau grup ketersediaan AlwaysOn adalah properti titik akhir pencerminan database. Dua jenis keamanan transportasi tersedia untuk titik akhir pencerminan database: Autentikasi Windows (Antarmuka Penyedia Dukungan Keamanan (SSPI)) dan autentikasi berbasis sertifikat.

Otentikasi Windows

Di bawah Autentikasi Windows, setiap instans server masuk ke sisi lain menggunakan kredensial Windows dari akun pengguna Windows tempat proses berjalan. Autentikasi Windows mungkin memerlukan beberapa konfigurasi manual akun masuk, sebagai berikut:

  • Jika instans SQL Server berjalan sebagai layanan di bawah akun domain yang sama, tidak diperlukan konfigurasi tambahan.

  • Jika instans SQL Server berjalan sebagai layanan di bawah akun domain yang berbeda (di domain yang sama atau tepercaya), login setiap akun harus dibuat di master pada setiap instans server lainnya, dan login tersebut harus diberikan izin CONNECT pada titik akhir.

  • Jika instans SQL Server berjalan sebagai akun Layanan Jaringan, login setiap akun komputer host (DomainName\ComputerName$) harus dibuat di master di masing-masing server lain, dan login tersebut harus diberikan izin CONNECT pada titik akhir. Ini karena instans server yang berjalan di bawah akun Layanan Jaringan mengautentikasi menggunakan akun domain komputer host.

Catatan

Untuk contoh menyiapkan sesi pencerminan database menggunakan Autentikasi Windows, lihat Contoh: Menyiapkan Pencerminan Database Menggunakan Autentikasi Windows (Transact-SQL).

Sertifikat

Dalam beberapa situasi, seperti ketika instans server tidak berada di domain tepercaya atau ketika SQL Server berjalan sebagai layanan lokal, Autentikasi Windows tidak tersedia. Dalam kasus seperti itu, alih-alih kredensial pengguna, sertifikat diperlukan untuk mengautentikasi permintaan koneksi. Titik akhir pencerminan setiap instans server harus dikonfigurasi dengan sertifikat yang dibuat secara lokal.

Metode enkripsi dibuat ketika sertifikat dibuat. Untuk informasi selengkapnya, lihat Mengizinkan Titik Akhir Pencerminan Database untuk Menggunakan Sertifikat untuk Koneksi Keluar (Transact-SQL). Kelola sertifikat yang Anda gunakan dengan hati-hati.

Instans server menggunakan kunci privat sertifikatnya sendiri untuk membangun identitasnya saat menyiapkan koneksi. Instans server yang menerima permintaan koneksi menggunakan kunci publik sertifikat pengirim untuk mengautentikasi identitas pengirim. Misalnya, pertimbangkan dua instans server, Server_A dan Server_B. Server_A menggunakan kunci privatnya untuk mengenkripsi header koneksi sebelum mengirim permintaan koneksi ke Server_B. Server_B menggunakan kunci publik sertifikat Server_A untuk mendekripsi header koneksi. Jika header yang didekripsi benar, Server_B tahu bahwa header dienkripsi oleh Server_A, dan koneksi diautentikasi. Jika header yang didekripsi salah, Server_B tahu bahwa permintaan koneksi tidak autentik dan menolak koneksi.

Enkripsi Data

Secara default, titik akhir pencerminan database memerlukan enkripsi data yang dikirim melalui koneksi pencerminan. Dalam hal ini, titik akhir hanya dapat tersambung ke titik akhir yang juga menggunakan enkripsi. Kecuali Anda dapat menjamin bahwa jaringan Anda aman, kami sarankan Anda memerlukan enkripsi untuk koneksi pencerminan database Anda. Namun, Anda dapat menonaktifkan enkripsi atau membuatnya didukung, tetapi tidak diperlukan. Jika enkripsi dinonaktifkan, data tidak pernah dienkripsi dan titik akhir tidak dapat tersambung ke titik akhir yang memerlukan enkripsi. Jika enkripsi didukung, data hanya dienkripsi jika titik akhir yang berlawanan mendukung atau memerlukan enkripsi.

Catatan

Titik akhir pencerminan yang dibuat oleh SQL Server Management Studio dibuat dengan enkripsi yang diperlukan atau dinonaktifkan. Untuk mengubah pengaturan enkripsi ke DIDUKUNG, gunakan pernyataan ALTER ENDPOINT Transact-SQL. Untuk informasi selengkapnya, lihat ALTER ENDPOINT (Transact-SQL).

Secara opsional, Anda dapat mengontrol algoritma enkripsi yang dapat digunakan oleh titik akhir, dengan menentukan salah satu nilai berikut untuk opsi ALGORITHM dalam pernyataan CREATE ENDPOINT atau pernyataan ALTER ENDPOINT:

Nilai ALGORITMA Deskripsi
RC4 Menentukan bahwa titik akhir harus menggunakan algoritma RC4. Ini adalah default.

** Peringatan ** Algoritma RC4 tidak digunakan lagi. Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Kami menyarankan agar Anda menggunakan AES.
AES Menentukan bahwa titik akhir harus menggunakan algoritma AES.
AES RC4 Menentukan bahwa kedua titik akhir akan bernegosiasi untuk algoritma enkripsi dengan titik akhir ini memberikan preferensi pada algoritma AES.
RC4 AES Menentukan bahwa kedua titik akhir akan bernegosiasi untuk algoritma enkripsi dengan titik akhir ini memberikan preferensi pada algoritma RC4.

Jika menghubungkan titik akhir menentukan kedua algoritma tetapi dalam urutan yang berbeda, titik akhir yang menerima koneksi akan menang.

Catatan

Algoritma RC4 hanya didukung untuk kompatibilitas mundur. Materi baru hanya dapat dienkripsi menggunakan RC4 atau RC4_128 saat database berada dalam tingkat kompatibilitas 90 atau 100. (Tidak disarankan.) Gunakan algoritma yang lebih baru seperti salah satu algoritma AES sebagai gantinya. Di SQL Server 2012 (11.x)dan versi yang lebih tinggi, materi yang dienkripsi menggunakan RC4 atau RC4_128 dapat didekripsi dalam tingkat kompatibilitas apa pun.

Meskipun jauh lebih cepat daripada AES, RC4 adalah algoritma yang relatif lemah, sementara AES adalah algoritma yang relatif kuat. Oleh karena itu, kami sarankan Anda menggunakan algoritma AES.

Untuk informasi tentang sintaks Transact-SQL untuk menentukan enkripsi, lihat CREATE ENDPOINT (Transact-SQL).

Tugas Terkait

Untuk mengonfigurasi keamanan transportasi untuk titik akhir pencerminan database

Lihat Juga

Pilih Algoritma Enkripsi
ALTER ENDPOINT (Transact-SQL)
DROP ENDPOINT (Transact-SQL)
Security Center untuk Mesin Database SQL Server dan Azure SQL Database
Mengelola Metadata Saat Membuat Database Tersedia di Instans Server Lain (SQL Server)
Titik Akhir Pencerminan Database (SQL Server)
sys.database_mirroring_endpoints (T-SQL)
sys.dm_db_mirroring_connections (T-SQL)
Memecahkan Masalah Konfigurasi Pencerminan Database (SQL Server)
Memecahkan Masalah Konfigurasi Grup Ketersediaan AlwaysOn (SQL Server)