1.1口令加密认证
目前支持的口令加密算法有:
口令加密算法
是否需要连接串支持
备注
scram-sha-256
否
只有jdk1.7,jdk1.8的驱动支持
sm3
否
不能与特性db_user_namespace一起使用
Java依赖库:BC 库:bcprov-jdk15on-1.70.jar
scram-sm3
否
Java依赖库:BC 库:bcprov-jdk15on-1.70.jar
sm4
否
Java依赖库:BC 库:bcprov-jdk15on-1.70.jar
- 无新增连接串参数
注释事项:使用对应认证算法,需保证对应的用户的密码是采用的对应的加密方式。
认证算法查询:select * from pg_authid;。
密码加密方式查询:show password_encryption;。
强身份验证
2.1 证书认证
对于数据库所支持的证书和密钥文件的类型,目前支持 rsa 和 sm2 两种类型。
2.1.1 sm2认证
服务端开启证书认证后,客户端 JDBC 接口的配置如下:
- Java依赖库:BC 库:bcprov-jdk15on-1.70.jar,根据驱动编译的 JDK 版本自行选择 jar 包。
2.JNI 库依赖:
• window:compresskb.dll,libcrypto-1_1-x64.dll,libssl-1_1-x64.dll。(PATH 环境变量增加这三个文件 所在路径)
文件位置:${安装目录}\Interface\compress\v8r6_compress_win\kb_x86\release
• linux:libcompresskb.so,libcrypto.so.1.1,libssl.so.1.1。(LD_LIBRARY_PATH 环境变量增加这三个 文件文件所在路径)
文件位置:${安装目录}/interface/compress/
- JDBC 接口用户登录信息配置:
jdbc:kingbase8://10.10.12.252:54112/test?ukpwdcert=D:\sm2_sys\uclient_sys.pem&ukpwdkey=D:\sm2_sys\ uclient_sys.key
JDBC 接口 URL 连接串新增参数 见《KingbaseES客户端编程接口指南-JDBC》3.1.2JDBC连接属性-安全认证参数表。
注意事项:
- 证书文件uclient_sys.pem需要.pem类型
- 密钥文件uclient_sys.key 需要.key类型
2.1.2 rsa认证
服务端开启证书认证后,客户端 JDBC 接口的配置如下:
- JDBC 接口用户登录信息配置
jdbc:kingbase8://10.10.12.252:54112/test?ukpwdcert=D:\rsa_sys\uclient.crt&ukpwdkey=D:\rsa_sys\ uclient.pk8
JDBC 接口 URL 连接串新增参数 见《KingbaseES客户端编程接口指南-JDBC》3.1.2JDBC连接属性-安全认证参数表。
注意事项:
- 证书文件uclient.crt需要.crt类型
- 密钥文件uclient.pk8 需要.pk8类型
2.2 usbkey认证
对于数据库所支持的usbkey认证类型,目前支持渔翁usbkey。
服务端开启usbkey认证后,客户端 JDBC 接口的配置如下:
- JNI 库依赖:
• linux:libGDBapi.so,libFmKey.so(LD_LIBRARY_PATH 环境变量增加这两个 文件文件所在路径)
文件位置: ${安装目录}/interface/compress/
- JDBC 接口用户登录信息配置:
jdbc:kingbase8://10.10.12.252:54112/test? Usbkeypin=12345678
JDBC 接口 URL 连接串新增参数 见《KingbaseES客户端编程接口指南-JDBC》3.1.2JDBC连接属性-安全认证参数表。
注意事项:
1.jdbc 的连接信息的用户名必须和 USBKey 里的证书中 Common name 的值相同。
2.jdbc 的运行程序必须和 USBKey 的硬件设备在同一台机器上。
3.目前只支持linux_x86环境。
版权归原作者 沉舟侧畔千帆过_ 所有, 如有侵权,请联系我们删除。