#配置安全连接

JDBC的安全连接配置包括SSL加密通信、TLCP加密通信、SM3密码哈希算法、SM4密码加密算法以及UKEY安全登录,此类安全配置的开关均在服务端,若服务端开启了相应的安全配置开关,JDBC需要进行相应的设置,否则无法获取连接进行数据库操作。

# SSL加密通信

若服务端开启了SSL加密通信,JDBC必须配置以下参数:

配置参数名 参数描述
sslRootCer 为SSL加密通信根证书的标准路径,可以为绝对路径或相对路径。

URL连接配置示例:

jdbc:yasdb://192.168.1.2:1688/yashan?sslRootCer=./root.crt 

# TLCP加密通信

若服务端开启了TLCP加密通信,需要联系技术支持获取安装包中相应的动态库并存放至指定路径:

动态库 文件名 存放至以下路径
yashandb-gmssl-jni动态库 * Windows系统:yas_gmssl_jni.dll
* Linux系统:libyas_gmssl_jni.so
存放至java.library.path所包含的目录下。
默认情况下,java.library.path包含工程根目录、Path目录、OS的系统目录等,也可以在项目启动命令里加上JVM参数 -Djava.library.path=XXX显式设置该路径。
GmSSL动态库 * Windows系统:gmssl.dll
* Linux系统:libgmssl.so
* Windows系统:存放至Path路径下。
* Linux系统:存放至LD_LIBRARY_PATH目录下。

除了动态库,JDBC还必须配置以下参数:

配置参数名 参数描述
tlcpCacertFile TLCP加密通信根证书的标准路径,可以为绝对路径或相对路径。
tlcpCertFile TLCP加密通信客户端证书的标准路径,可以为绝对路径或相对路径。
tlcpClientKeyFile TLCP加密通信客户端key文件的标准路径,可以为绝对路径或相对路径。
tlcpClientKeyPass TLCP加密通信客户端key的密码。

URL连接配置示例:

jdbc:yasdb://192.168.1.2:1688/yashan?tlcpCacertFile=D:/gmssl_ca/rootcacert.pem&tlcpCertFile=D:/gmssl_ca/clientcert.pem&tlcpClientKeyFile=D:/gmssl_ca/clientkey.pem&tlcpClientKeyPass=123456

# SM3密码哈希算法

若服务端开启了SM3密码哈希算法,需要联系技术支持获取安装包中相应的动态库并存放至指定路径:

动态库 文件名 存放至以下路径
YASJDBC动态库 * Windows系统:YASJDBC.dll
* Linux系统:YASJDBC.so
存放至java.library.path所包含的目录下。
默认情况下,java.library.path包含工程根目录、Path目录、OS的系统目录等,也可以在项目启动命令里加上JVM参数 -Djava.library.path=XXX显式设置该路径。
GmSSL动态库 * Windows系统:gmssl.dll
* Linux系统:libgmssl.so
* Windows系统:存放至Path路径下。
* Linux系统:存放至LD_LIBRARY_PATH目录下。

# SM4密码加密算法

若服务端开启了SM4密码加密算法,需要联系技术支持获取安装包中相应的动态库并存放至指定路径:

动态库 文件名 存放至以下路径
YASJDBC动态库 * Windows系统:YASJDBC.dll
* Linux系统:YASJDBC.so
存放至java.library.path所包含的目录下。
默认情况下,java.library.path包含工程根目录、Path目录、OS的系统目录等,也可以在项目启动命令里加上JVM参数 -Djava.library.path=XXX显式设置该路径。
GmSSL动态库 * Windows系统:gmssl.dll
* Linux系统:libgmssl.so
* Windows系统:存放至Path路径下。
* Linux系统:存放至LD_LIBRARY_PATH目录下。

# UKEY安全登录

若服务端开启了UKEY安全登录,需要联系技术支持获取安装包中相应的动态库并存放至指定路径:

动态库 文件名 存放至以下路径
YASJDBC动态库 * Windows系统:YASJDBC.dll
* Linux系统:YASJDBC.so
存放至java.library.path所包含的目录下。
默认情况下,java.library.path包含工程根目录、Path目录、OS的系统目录等,也可以在项目启动命令里加上JVM参数 -Djava.library.path=XXX显式设置该路径。
libgm3000动态库 * Windows系统:mtoken_gm3000.dll
* Linux系统:libgm3000.1.0.so
* Windows系统:存放至Path路径下。
* Linux系统:存放至LD_LIBRARY_PATH目录下。

除了动态库,JDBC还必须配置以下参数:

参数名 合法值 参数描述
UKeyName * DBA:如果登录的用户角色是DBA,则要求UKEY的设备名为DBA
* SECURITY_ADMIN:如果登录的用户角色是安全管理员,则要求UKEY的设备名为SECURITY_ADMIN
* AUDIT_ADMIN :如果登录的用户角色是审计员,则要求UKEY的设备名为AUDIT_ADMIN
该参数表示要认证的UKEY设备名,设备名要求和用户的角色名保持对应。
UKeyPin 小于64位的密码值 该参数指定UKEY的用户密码。

URL连接配置示例:

jdbc:yasdb://192.168.1.2:1688/yashan?UKeyName=DBA&UKeyPin=Yashan123
edit-icon
反馈
coperate-icon
coperate
合作
communication-icon
communicate
交流