Mengonfigurasi Keamanan Dialog untuk Pemberitahuan Peristiwa

Berlaku untuk:SQL Server

Keamanan dialog Service Broker harus dikonfigurasi untuk pemberitahuan peristiwa yang mengirim pesan ke broker layanan di server jarak jauh. Keamanan dialog harus dikonfigurasi secara manual sesuai dengan model keamanan penuh dialog Service Broker. Model keamanan penuh memungkinkan enkripsi dan dekripsi pesan yang dikirim ke dan dari server jarak jauh. Meskipun pemberitahuan peristiwa dikirim ke satu arah, pesan lain, seperti kesalahan, juga dikembalikan ke arah yang berlawanan.

Mengonfigurasi Keamanan Dialog untuk Pemberitahuan Peristiwa

Proses yang diperlukan untuk menerapkan keamanan dialog untuk pemberitahuan peristiwa dijelaskan dalam langkah-langkah berikut. Langkah-langkah ini termasuk tindakan yang harus diambil pada server sumber dan server target. Server sumber adalah server tempat pemberitahuan peristiwa sedang dibuat. Server target adalah server yang menerima pesan pemberitahuan peristiwa. Anda harus menyelesaikan tindakan di setiap langkah untuk server sumber dan server target sebelum melanjutkan ke langkah berikutnya.

Penting

Semua sertifikat harus dibuat dengan tanggal mulai dan kedaluwarsa yang valid.

Langkah 1: Tetapkan nomor port TCP dan nama layanan target.

Buat port TCP tempat server sumber dan server target akan menerima pesan. Anda juga harus menentukan nama layanan target.

Langkah 2: Konfigurasikan enkripsi dan berbagi sertifikat untuk autentikasi tingkat database.

Selesaikan tindakan berikut pada server sumber dan target.

Server sumber Server target
Pilih atau buat database untuk menahan pemberitahuan peristiwa dan kunci master. Pilih atau buat database untuk menahan kunci master.
Jika tidak ada kunci master untuk database sumber, buat kunci master. Kunci master diperlukan pada database sumber dan target untuk membantu mengamankan sertifikat masing-masing. Jika tidak ada kunci master untuk database target, buat kunci master.
Buat login dan pengguna yang sesuai untuk database sumber. Buat login dan pengguna yang sesuai untuk database target.
Buat sertifikat yang dimiliki oleh pengguna database sumber. Buat sertifikat yang dimiliki oleh pengguna database target.
Cadangkan sertifikat ke file yang dapat diakses oleh server target. Cadangkan sertifikat ke file yang dapat diakses oleh server sumber.
Buat pengguna, tentukan pengguna database target, dan TANPA LOGIN. Pengguna ini akan memiliki sertifikat database target yang akan dibuat dari file cadangan. Pengguna tidak perlu dipetakan ke login, karena satu-satunya tujuan pengguna ini adalah untuk memiliki sertifikat database target yang dibuat di langkah 3 yang mengikuti. Buat pengguna, tentukan pengguna database sumber, dan TANPA LOGIN. Pengguna ini akan memiliki sertifikat database sumber yang akan dibuat dari file cadangan. Pengguna tidak perlu dipetakan ke login, karena satu-satunya tujuan pengguna ini adalah untuk memiliki sertifikat database sumber yang dibuat di langkah 3 yang mengikuti.

Langkah 3: Bagikan sertifikat dan berikan izin untuk autentikasi tingkat database.

Selesaikan tindakan berikut pada server sumber dan target.

Server sumber Server target
Buat sertifikat dari file cadangan sertifikat target, menentukan pengguna database target sebagai pemilik. Buat sertifikat dari file cadangan sertifikat sumber, menentukan pengguna database sumber sebagai pemilik.
Berikan izin untuk membuat pemberitahuan peristiwa ke pengguna database sumber. Untuk informasi selengkapnya tentang izin ini, lihat MEMBUAT PEMBERITAHUAN PERISTIWA (Transact-SQL). Berikan izin REFERENCES kepada pengguna database target pada kontrak Service Broker pemberitahuan peristiwa yang ada: https://schemas.microsoft.com/SQL/Notifications/PostEventNotification.
Buat pengikatan layanan jarak jauh ke layanan target dan tentukan kredensial pengguna database target. Pengikatan layanan jarak jauh menjamin bahwa kunci publik dalam sertifikat yang dimiliki oleh pengguna database sumber akan mengautentikasi pesan yang dikirim ke server target. Berikan izin CREATE QUEUE, CREATE SERVICE, dan CREATE SCHEMA ke pengguna database target.
Jika belum tersambung ke database sebagai pengguna database target, lakukan sekarang.
Buat antrean untuk menerima pesan pemberitahuan peristiwa dan buat layanan untuk mengirimkan pesan.
Berikan izin KIRIM pada layanan target kepada pengguna database sumber.
Berikan pengidentifikasi broker layanan database sumber ke server target. Pengidentifikasi ini dapat diperoleh dengan mengkueri kolom service_broker_guid tampilan katalog sys.databases . Untuk pemberitahuan peristiwa tingkat server, gunakan pengidentifikasi broker layanan msdb. Berikan pengidentifikasi broker layanan database target ke server sumber.

Langkah 4: Buat rute dan siapkan autentikasi tingkat server.

Selesaikan tindakan berikut pada server sumber dan target.

Server sumber Server target
Buat rute ke layanan target, dan tentukan pengidentifikasi broker layanan database target dan nomor port TCP yang disepakati. Buat rute ke layanan sumber, dan tentukan pengidentifikasi broker layanan database sumber dan nomor port TCP yang disepakati. Untuk menentukan layanan sumber, gunakan layanan yang disediakan berikut: https://schemas.microsoft.com/SQL/Notifications/EventNotificationService.
Beralih ke database master untuk mengonfigurasi autentikasi tingkat server. Beralih ke database master untuk mengonfigurasi autentikasi tingkat server.
Jika tidak ada kunci master untuk database master , buat kunci master. Jika tidak ada kunci master untuk database master , buat kunci master.
Buat sertifikat yang mengautentikasi database. Buat sertifikat yang mengautentikasi database.
Cadangkan sertifikat ke file yang dapat diakses oleh server target. Cadangkan sertifikat ke file yang dapat diakses oleh server sumber.
Buat titik akhir, dan tentukan nomor port TCP yang disepakati, FOR SERVICE_BROKER (AUTHENTICATION = CERTIFICATE certificate_name), dan nama sertifikat autentikasi. Buat titik akhir, dan tentukan nomor port TCP yang disepakati, FOR SERVICE_BROKER (AUTHENTICATION = CERTIFICATE certificate_name), dan nama sertifikat autentikasi.
Buat login, dan tentukan login server target. Buat login, dan tentukan login server sumber.
Berikan izin CONNECT pada titik akhir ke login pengautentikasi target. Berikan izin CONNECT pada titik akhir ke login pengautentikasi sumber.
Buat pengguna, dan tentukan login pengautentikasi target. Buat pengguna, dan tentukan login pengautentikasi sumber.

Langkah 5: Bagikan sertifikat untuk autentikasi tingkat server dan buat pemberitahuan peristiwa.

Selesaikan tindakan berikut pada server sumber dan target.

Server sumber Server target
Buat sertifikat dari file cadangan sertifikat target, menentukan pengguna pengautentikasi target sebagai pemilik. Buat sertifikat dari file cadangan sertifikat sumber, menentukan pengguna pengautentikasi sumber sebagai pemilik.
Beralih ke database sumber untuk membuat pemberitahuan peristiwa, dan jika Anda belum tersambung sebagai pengguna database sumber, lakukan sekarang. Beralih ke database target untuk menerima pesan pemberitahuan peristiwa.
Buat pemberitahuan peristiwa, dan tentukan layanan broker dan pengidentifikasi database target.

Lihat Juga

GRANT (T-SQL)
SERTIFIKAT CADANGAN (Transact-SQL)
sys.databases (T-SQL)
Hierarki Enkripsi
Menerapkan Pemberitahuan Peristiwa
BUAT KUNCI MASTER (Transact-SQL)
CREATE LOGIN (Transact-SQL)
CREATE USER (Transact-SQL)
BUAT SERTIFIKAT (Transact-SQL)
MEMBUAT PENGIKATAN LAYANAN JARAK JAUH (Transact-SQL)
GRANT (T-SQL)
BUAT RUTE (Transact-SQL)
BUAT ANTREAN (Transact-SQL)
CREATE SERVICE (Transact-SQL)
CREATE ENDPOINT (Transact-SQL)
MEMBUAT PEMBERITAHUAN PERISTIWA (Transact-SQL)