Memperbarui aplikasi untuk terhubung ke instans Microsoft SQL Server DB menggunakan sertifikatSSL/TLSbaru - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Memperbarui aplikasi untuk terhubung ke instans Microsoft SQL Server DB menggunakan sertifikatSSL/TLSbaru

Mulai 13 Januari 2023, Amazon RDS telah menerbitkan sertifikat Certificate Authority (CA) baru untuk menghubungkan ke instans RDS DB Anda menggunakan Secure Socket Layer atau Transport Layer Security (SSL/TLS). Setelah itu, Anda dapat menemukan informasi tentang pembaruan aplikasi untuk menggunakan sertifikat baru.

Topik ini dapat membantu Anda menentukan apakah ada aplikasi klien yang SSL TLS menggunakan/untuk terhubung ke instans DB Anda. Jika demikian, Anda dapat memeriksa lebih lanjut apakah aplikasi tersebut memerlukan verifikasi sertifikat untuk terhubung.

catatan

Beberapa aplikasi dikonfigurasi untuk terhubung ke instans SQL Server DB hanya jika mereka berhasil memverifikasi sertifikat di server.

Untuk aplikasi tersebut, Anda harus memperbarui penyimpanan kepercayaan aplikasi klien untuk menyertakan sertifikat CA baru.

Setelah Anda memperbarui sertifikat CA di penyimpanan kepercayaan aplikasi klien, Anda dapat merotasi sertifikat di instans DB Anda. Sebaiknya Anda menguji prosedur ini di lingkungan pengembangan dan pementasan sebelum menerapkannya di lingkungan produksi Anda.

Untuk informasi selengkapnya tentang rotasi sertifikat, lihat Memutar sertifikat SSL TLS /Anda. Untuk informasi selengkapnya tentang mengunduh sertifikat, lihat . Untuk informasi tentang menggunakanSSL/TLSdengan instans Microsoft SQL Server DB, lihatMenggunakan SSL dengan instans Microsoft SQL Server DB.

Menentukan apakah ada aplikasi yang terhubung ke instans Microsoft SQL Server DB Anda menggunakan SSL

Periksa konfigurasi instans DB untuk nilai parameter rds.force_ssl. Secara default, parameter rds.force_ssl diatur ke 0 (nonaktif). Jika rds.force_ssl parameter diatur ke 1 (on), klien diharuskan menggunakanSSL/TLSuntuk koneksi. Lihat informasi lebih lanjut tentang grup parameter di Grup parameter untuk RDS.

Jalankan kueri berikut untuk mendapatkan opsi enkripsi saat ini untuk semua koneksi terbuka ke instans DB. Kolom ENCRYPT_OPTION pengembalian TRUE jika koneksi dienkripsi.

select SESSION_ID, ENCRYPT_OPTION, NET_TRANSPORT, AUTH_SCHEME from SYS.DM_EXEC_CONNECTIONS

Kueri ini hanya menunjukkan koneksi saat ini. Itu tidak menunjukkan apakah aplikasi yang telah terhubung dan terputus di masa lalu telah digunakanSSL.

Menentukan apakah klien memerlukan verifikasi sertifikat agar dapat terhubung

Anda dapat memeriksa apakah jenis klien yang berbeda memerlukan verifikasi sertifikat untuk terhubung.

catatan

Jika Anda menggunakan konektor selain yang tercantum di atas, lihat dokumentasi konektor spesifik untuk informasi tentang cara menerapkan koneksi terenkripsi. Untuk informasi selengkapnya, lihat Modul koneksi untuk SQL database Microsoft di dokumentasi Microsoft SQL Server.

SQLStudio Manajemen Server

Periksa apakah enkripsi diberlakukan untuk koneksi SQL Server Management Studio:

  1. Luncurkan Studio Manajemen SQL Server.

  2. Untuk Terhubung ke server, masukkan informasi server, nama pengguna login, dan kata sandi.

  3. Pilih Opsi.

  4. Centang jika Enkripsikan koneksi dipilih di halaman koneksi.

Untuk informasi selengkapnya tentang Studio Manajemen SQL Server, lihat Menggunakan Studio Manajemen SQL Server.

Sqlcmd

Contoh berikut dengan sqlcmd klien menunjukkan cara memeriksa koneksi SQL Server skrip untuk menentukan apakah koneksi yang berhasil memerlukan sertifikat yang valid. Untuk informasi selengkapnya, lihat Menghubungkan dengan sqlcmd di dokumentasi Microsoft SQL Server.

Saat menggunakansqlcmd, SSL koneksi memerlukan verifikasi terhadap sertifikat server jika Anda menggunakan argumen -N perintah untuk mengenkripsi koneksi, seperti pada contoh berikut.

$ sqlcmd -N -S dbinstance.rds.amazon.com -d ExampleDB
catatan

Jika sqlcmd dipanggil dengan opsi -C, itu menyetujui sertifikat server, meskipun tidak sesuai dengan penyimpanan kepercayaan klien.

ADO.NET

Dalam contoh berikut, aplikasi terhubung menggunakanSSL, dan sertifikat server harus diverifikasi.

using SQLC = Microsoft.Data.SqlClient; ... static public void Main() { using (var connection = new SQLC.SqlConnection( "Server=tcp:dbinstance.rds.amazon.com;" + "Database=ExampleDB;User ID=LOGIN_NAME;" + "Password=YOUR_PASSWORD;" + "Encrypt=True;TrustServerCertificate=False;" )) { connection.Open(); ... }

Java

Dalam contoh berikut, aplikasi terhubung menggunakanSSL, dan sertifikat server harus diverifikasi.

String connectionUrl = "jdbc:sqlserver://dbinstance.rds.amazon.com;" + "databaseName=ExampleDB;integratedSecurity=true;" + "encrypt=true;trustServerCertificate=false";

Untuk mengaktifkan SSL enkripsi untuk klien yang terhubung menggunakanJDBC, Anda mungkin perlu menambahkan RDS sertifikat Amazon ke penyimpanan sertifikat Java CA. Untuk petunjuk, lihat Mengkonfigurasi klien untuk enkripsi dalam dokumentasi Microsoft SQL Server. Anda juga dapat memberikan nama file sertifikat CA tepercaya secara langsung melalui aplikasi trustStore=path-to-certificate-trust-store-file dengan string koneksi.

catatan

Jika Anda menggunakan TrustServerCertificate=true (atau yang setara) dalam string koneksi, proses koneksi melewati validasi rantai persetujuan. Dalam hal ini, aplikasi akan terkoneksi meskipun sertifikat tidak dapat diverifikasi. Menggunakan TrustServerCertificate=false memberlakukan validasi sertifikat dan merupakan praktik terbaik.

Memperbarui penyimpanan kepercayaan aplikasi Anda

Anda dapat memperbarui toko kepercayaan untuk aplikasi yang menggunakan Microsoft SQL Server. Untuk petunjuk, silakan lihat Mengenkripsi koneksi spesifik. Juga, lihat Mengkonfigurasi klien untuk enkripsi dalam dokumentasi Microsoft SQL Server.

Jika Anda menggunakan sistem operasi selain Microsoft Windows, lihat dokumentasi distribusi perangkat lunak SSL TLS untuk/implementasi untuk informasi tentang menambahkan sertifikat CA root baru. Misalnya, Open SSL dan Gnu TLS adalah opsi populer. Gunakan metode implementasi untuk menambahkan kepercayaan ke sertifikat CA RDS root. Microsoft menyediakan petunjuk untuk mengonfigurasi sertifikat pada beberapa sistem.

Untuk informasi tentang cara mengunduh sertifikat root, lihat .

Untuk contoh skrip yang mengimpor sertifikat, lihat Contoh skrip untuk mengimpor sertifikat ke trust store Anda.

catatan

Saat memperbarui penyimpanan kepercayaan, Anda dapat mempertahankan sertifikat lama selain menambahkan sertifikat baru.