使用可信路径方式连接数据库¶
介绍JDBC如何通过可信路径方式连接数据库
首先需要设置后台参数SECURE_COMMUNICATION_LEVEL,其中:
参数值 参数说明 0 不启用安全通信功能 1 启用安全通信功能, 但是否进行安全通信,由客户端来决定 2 启用安全通信功能, 强制客户端进行安全通信
并通过DBA工具生成ca证书,详情可查看DBA管理工具,CA使用说明 CA使用说明
package com.sun.cts.tests.jdbc.help_doc.ru_men;
/******************************************
*这个例子演示使用可信路径方式连接数据库
******************************************/
import static org.junit.Assert.fail;
import java.sql.Connection;
import java.sql.DriverManager;
import java.util.Properties;
import org.junit.Test;
public class TrustedChannel {
private Connection con;
@Test
public void execute() {
try {
Class.forName("com.oscar.Driver");
Properties p = new Properties();
p.setProperty("user", "SYSDBA");
p.setProperty("password", "szoscar55");
p.setProperty("ssl", "t");
p.setProperty("ssl_load_style", "SSL_LOAD_STYLE_FILE");
p.setProperty("certfile", "E:\\db\\ShenTong_20240429\\bin\\private\\sysdba.crt");//全路径
p.setProperty("keyfile", "E:\\db\\ShenTong_20240429\\bin\\private\\sysdba.key");
p.setProperty("keyfilepwd", "szoscar55123456!");
p.setProperty("rootfile", "E:\\db\\ShenTong_20240429\\bin\\private\\ca.crt");
p.setProperty("NOSSLVersion", "f");
con = DriverManager.getConnection("jdbc:oscar://192.168.1.63:4444/AQ", p);
con.close();
} catch (Exception e) {
fail(e.getMessage());
}
}
public static void main(String[] args) {
new TrustedChannel().execute();
}
}