1

我可以使用需要 ssl 连接的 jaydebeapi python 3.7 包连接 db2 数据库。下面是连接字符串:

connection_string='jdbc:db2://%s:%s/%s:sslConnection=%s;sslTrustStoreLocation=%s;sslTrustStorePassword=%s' % (dsn_hostname, dsn_port, dsn_database, ssl_connection, ssl_trust_store_location, ssl_trust_store_password)

我需要使用 python

ibm_db 包

相反,但我没有找到任何关于将它与 ssl 信任库一起使用的信息。

请帮我解决这个问题。

4

1 回答 1

0

您的问题与配置有关,与编程无关。

用于 python 的 ibm_db 模块使用 CLI(调用级接口),这是一个由 Db2 驱动程序提供的非 java 接口,与使用 jdbc 的基于 java 的工具不同。

您可以选择使用手动创建的信任库或动态创建的信任库来连接 TLS/SSL。

后者需要工作站上最近的 Db2 客户端(高于 Db2 v10.5 修订包 5)和特殊配置设置,并假定只需要一个证书文件并且以 ARM 格式提供。

对于 IBM 云,相关文档在此处

为避免手动创建信任库,请使用连接关键字 SSLServerCertificate=fully-qualified-path-to-ARM-file 和 SecurityTransportMode=SSL。查找在线Db2 知识中心以获取详细信息。这是最简单的选择。

要使用信任库,它将与 java 使用的存储库不同,并且可能需要安装 IBM Global Security Kit (GSK) 的附加软件,然后对其进行配置。这是将 SSL 与 Db2 一起使用的旧方法,并且已被上面的动态信任库方法所取代。IBM 在此处的 Db2 知识中心对此进行了记录。

于 2019-04-30T12:02:22.263 回答