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 DB Oracle menggunakan sertifikat SSL/TLS baru
Sejak 13 Januari 2023, Amazon RDS telah menerbitkan serifikat Otoritas Sertifikat (CA) baru untuk terhubung ke instans DB RDS menggunakan Lapisan Soket Aman atau Keamanan Lapisan Pengangkutan (SSL/TLS). Setelah itu, Anda dapat menemukan informasi tentang pembaruan aplikasi untuk menggunakan sertifikat baru.
Topik ini dapat membantu Anda menentukan apakah aplikasi klien menggunakan SSL/TLS untuk terhubung ke instans DB Anda.
penting
Ketika Anda mengubah sertifikat untuk instans DB Amazon RDS for Oracle, hanya pendengar basis data yang dinyalakan ulang. Instans basis data tidak dimulai ulang. Koneksi basis data yang ada tidak terpengaruh, tetapi koneksi baru akan mengalami kesalahan selama periode waktu yang singkat sementara pendengar dimulai ulang.
catatan
Untuk aplikasi klien yang menggunakan SSL/TLS untuk terhubung ke instans DB, 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 penahapan sebelum menerapkannya di lingkungan produksi Anda.
Untuk informasi selengkapnya tentang rotasi sertifikat, lihat Memutar sertifikat SSL TLS /Anda. Untuk informasi selengkapnya tentang cara mengunduh sertifikat, lihat . Untuk informasi tentang menggunakan SSL/TLS dengan instans DB Oracle, lihat Lapisan Soket Aman Oracle.
Topik
Mencari tahu apakah aplikasi terhubung menggunakan SSL
Jika instans DB Oracle Anda menggunakan opsi SSL
yang ditambahkan, Anda mungkin menggunakan SSL. Periksa ini dengan mengikuti petunjuk di Menampilkan daftar opsi dan pengaturan opsi untuk grup opsi. Untuk informasi tentang opsi SSL
, lihat Lapisan Soket Aman Oracle.
Periksa log pendengar untuk menentukan apakah ada koneksi SSL. Berikut ini adalah output contoh di log pendengar.
date
time
* (CONNECT_DATA=(CID=(PROGRAM=program
) (HOST=host
)(USER=user
))(SID=sid
)) * (ADDRESS=(PROTOCOL=tcps)(HOST=host
)(PORT=port
)) * establish * ORCL * 0
Saat PROTOCOL
memiliki nilai tcps
untuk entri, itu menunjukkan koneksi SSL. Namun, saat HOST
adalah 127.0.0.1
, Anda dapat mengabaikan entri tersebut. Koneksi dari 127.0.0.1
adalah agen manajemen lokal di instans DB. Koneksi ini bukan koneksi SSL eksternal. Oleh karena itu, Anda memiliki aplikasi yang terhubung menggunakan SSL jika Anda melihat entri log pendengar ketika PROTOCOL
adalah tcps
dan HOST
adalah bukan 127.0.0.1
.
Untuk memeriksa log pendengar, Anda dapat menerbitkan log ke Log Amazon CloudWatch. Untuk informasi selengkapnya, lihat Menerbitkan log Oracle ke Amazon CloudWatch Logs.
Memperbarui penyimpanan kepercayaan aplikasi Anda
Anda dapat memperbarui penyimpanan kepercayaan untuk aplikasi yang menggunakan SQL*Plus atau JDBC untuk koneksi SSL/TLS.
Memperbarui penyimpanan kepercayaan aplikasi Anda untuk SQL*Plus
Anda dapat memperbarui penyimpanan kepercayaan untuk aplikasi yang menggunakan SQL*Plus untuk koneksi SSL/TLS.
catatan
Saat memperbarui penyimpanan kepercayaan, Anda dapat mempertahankan sertifikat lama selain menambahkan sertifikat baru.
Untuk memperbarui penyimpanan kepercayaan untuk aplikasi SQL*Plus
-
Unduh sertifikat root baru yang berfungsi untuk semua Wilayah AWS dan letakkan file di direktori
ssl_wallet
.Untuk informasi tentang cara mengunduh sertifikat root, lihat .
-
Jalankan perintah berikut untuk memperbarui dompet Oracle.
prompt>orapki wallet add -wallet $ORACLE_HOME/ssl_wallet -trusted_cert -cert $ORACLE_HOME/ssl_wallet/
ssl-cert.pem
-auto_login_onlyGanti nama file dengan nama yang Anda unduh.
-
Jalankan perintah berikut untuk mengonfirmasi bahwa dompet berhasil diperbarui.
prompt>orapki wallet display -wallet $ORACLE_HOME/ssl_wallet
Output Anda harus berisi berikut ini.
Trusted Certificates: Subject: CN=Amazon RDS Root 2019 CA,OU=Amazon RDS,O=Amazon Web Services\, Inc.,L=Seattle,ST=Washington,C=US
Memperbarui penyimpanan kepercayaan aplikasi Anda untuk JDBC
Anda dapat memperbarui penyimpanan kepercayaan untuk aplikasi yang menggunakan JDBC untuk koneksi SSL/TLS.
Untuk informasi tentang cara mengunduh sertifikat root, lihat .
Untuk contoh skrip yang mengimpor sertifikat, lihat Contoh skrip untuk mengimpor sertifikat ke trust store Anda.
Contoh kode Java untuk membangun koneksi SSL
Contoh kode berikut menunjukkan cara menyiapkan koneksi SSL menggunakan JDBC.
import java.sql.Connection; import java.sql.DriverManager; import java.sql.SQLException; import java.util.Properties; public class OracleSslConnectionTest { private static final String DB_SERVER_NAME = "<dns-name-provided-by-amazon-rds>"; private static final Integer SSL_PORT = "<ssl-option-port-configured-in-option-group>"; private static final String DB_SID = "<oracle-sid>"; private static final String DB_USER = "<user name>"; private static final String DB_PASSWORD = "<password>"; // This key store has only the prod root ca. private static final String KEY_STORE_FILE_PATH = "<file-path-to-keystore>"; private static final String KEY_STORE_PASS = "<keystore-password>"; public static void main(String[] args) throws SQLException { final Properties properties = new Properties(); final String connectionString = String.format( "jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=%s)(PORT=%d))(CONNECT_DATA=(SID=%s)))", DB_SERVER_NAME, SSL_PORT, DB_SID); properties.put("user", DB_USER); properties.put("password", DB_PASSWORD); properties.put("oracle.jdbc.J2EE13Compliant", "true"); properties.put("javax.net.ssl.trustStore", KEY_STORE_FILE_PATH); properties.put("javax.net.ssl.trustStoreType", "JKS"); properties.put("javax.net.ssl.trustStorePassword", KEY_STORE_PASS); final Connection connection = DriverManager.getConnection(connectionString, properties); // If no exception, that means handshake has passed, and an SSL connection can be opened } }
penting
Setelah Anda menentukan bahwa koneksi basis data Anda menggunakan SSL/TLS dan telah memperbarui penyimpanan kepercayaan aplikasi, Anda dapat memperbarui basis data untuk menggunakan sertifikat rds-ca-rsa2048-g1. Untuk mengetahui petunjuknya, lihat langkah 3 dalam Memperbarui sertifikat CA Anda dengan memodifikasi instans atau cluster DB.