本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
您可以使用 Oracle 參數 SSL_SERVER_DN_MATCH
,以強制資料庫伺服器的辨別名稱 (DN) 比對其服務名稱。如果您強制執行比對驗證,則 SSL會確保憑證來自伺服器。如果您不強制執行相符驗證,則 會SSL執行檢查,但允許連線,無論是否有相符項目。如果您不強制執行相符項目,則允許伺服器可能偽造其身分。
若要強制使用 DN 比對,請新增 DN 比對屬性,並使用如下指定的連線字串。
將此屬性新增至用戶端連線,以強制使用 DN 比對。
properties.put("oracle.net.ssl_server_dn_match", "TRUE");
使用 時,請使用下列連線字串強制執行 DN 比對SSL。
final String connectionString = String.format(
"jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCPS)(HOST=%s)(PORT=%d))" +
"(CONNECT_DATA=(SID=%s))" +
"(SECURITY = (SSL_SERVER_CERT_DN =
\"C=US,ST=Washington,L=Seattle,O=Amazon.com,OU=RDS,CN=%s\")))",
DB_SERVER_NAME, SSL_PORT, DB_SID, DB_SERVER_NAME);