使用证书文件在非 Java Db2 客户机中配置 TLS 支持
您可以配置 Db2 数据库客户机 (例如 CLI , CLP 和 .Net 数据提供程序客户机) ,以支持传输层安全性 (TLS) 与 Db2 服务器进行通信。
关于本任务
此任务向您展示如何仅使用签名证书在非 Java Db2 客户端中配置 TLS 支持。 要使用密钥数据库配置 TLS 支持,请参阅在非 Java Db2 客户端中使用密钥库配置 TLS 支持。
SSLServerCertificate 关键字支持使用 base64 (PEM) 和二进制 (DER) 编码证书。 此外,包含 Db2 11.5.8 和 11.5.9 CSB 的版本支持使用包含多个 编码证书的证书捆绑包。 DT244530 支持使用包含多个 base64 编码证书的证书捆绑包。
SSLServerCertificate 参数不支持使用密钥数据库,包括 CMS (.kdb)、 PKCS12 或 Java KeyStore (.jks) 格式的数据库。
过程
示例
示例 1: 使用连接字符串从 CLI/ODBC 应用程序连接到数据库:
"Database=sampledb; Protocol=tcpip; Hostname=myhost; Servicename=50001;
Security=ssl; SSLServerCertificate=/home/db2inst1/servercert.pem;"示例 2: 使用 db2cli.ini 配置文件从 CLI/ODBC 应用程序连接到数据库:
[sampledb]
Database=sampledb
Protocol=tcpip
Hostname=myhost
Servicename=50001
Security=ssl
SSLServerCertificate=/home/db2inst1/servercert.pem示例 3: 使用 SQLDriverConnect 函数 (CLI) 从 CLI/ODBC 应用程序连接到数据库:
使用 FileDSN CLI/ ODBC 关键字来标识 DSN 文件,从中建立连接字符串,以连接到 Db2 服务器。 在 SQLDriverConnect 函数的连接字符串中指定 FileDSN 的值。
[ODBC]
DRIVER=IBM DB2 ODBC DRIVER – DB2COPY1
UID=user1
AUTHENTICATION=SERVER
PORT=50001
HOSTNAME=myhost
PROTOCOL=TCPIP
DATABASE=SAMPLEDB
SECURITY=SSL
SSLServerCertificate=/home/db2inst1/servercert.pem示例 4: 使用 db2dsdriver.cfg 配置文件从 CLI/ODBC 应用程序或嵌入式 SQL 应用程序连接到数据库。
如果您正在运行 Db2 11.5.7 或更高版本,那么可以在 db2dsdriver.cfg 配置文件中包含 SSLServerCertificate 关键字以从嵌入式 SQL 应用程序进行连接。
<dsn alias="sample" host="myhost.ibm.com" name="sample" port="50001">
<parameter name="SSLServerCertificate" value="/home/db2inst1/servercert.pem"/>
<parameter name="SecurityTransportMode" value="SSL"/>
</dsn>