我正在尝试使用带有SSL证书(.pem)和私钥的MySQL数据库连接到KNIME。

不幸的是,我找不到在节点或属性中同时包含两个文件(.pem + .key)的方法。

任何人都可以帮助我或有这种联系的经验吗?

谢谢。

最佳答案

在此处的KNIME论坛上提供了完整的答案:https://forum.knime.com/t/connection-to-mysql-with-ssl-pem-key/17755


  首先,您需要将证书和私钥导入Java密钥库中,以便Java SSL库可以使用它们。有关此的更多详细信息,请参见MySQL文档的“设置客户端身份验证”部分。
  
  完成此操作后,您需要告诉KNIME使用信任库。您可以通过将以下两行添加到位于KNIME安装文件夹中的knime.ini文件的末尾来执行此操作:

-Djavax.net.ssl.keyStore= path_to_keystore_file
-Djavax.net.ssl.keyStorePassword= mypassword

  
  也可以在连接器节点中将它们指定为JDBC参数。在KNIME 4.0中,打开“ MySQL连接器”节点的节点对话框,然后转到“ JDBC参数”选项卡。在选项卡中,添加以下两个参数以及相应的文件路径:

clientCertificateKeyStoreUrl=file:path_to_truststore_file
clientCertificateKeyStorePassword= mypassword

  
  除了将纯文本密码写入节点对话框之外,您还可以使用“凭据配置”节点并将其连接到MySQL连接器节点。
  
  连接后,您可以在表的“类型”列中选择“凭据-密码类型”,然后在“值”列中选择凭据的名称。

07-28 10:43