通过SSL连接将Squirrel客户端连接到DB2服务器

通过SSL连接将Squirrel客户端连接到DB2服务器,db2,squirrel-sql,Db2,Squirrel Sql,我正在使用Squirrel3.5.0客户端连接到DB2数据库。最近,我将DB2改为在SSL上运行,而不是在普通的TCS/IP上运行。现在,我希望Squirrel使用SSL端口连接到我的DB2服务器。所以我更新了连接字符串中的端口号。现在我需要将服务器证书添加到Squirrel客户端信任库中,以便它可以信任服务器连接,但我不知道如何做?有人对此有什么想法吗?以防万一,如果有人想完成同样的任务: 找到JAVA\u HOME路径 运行以下命令 keytool-importcert-file e:/ce

我正在使用Squirrel3.5.0客户端连接到DB2数据库。最近,我将DB2改为在SSL上运行,而不是在普通的TCS/IP上运行。现在,我希望Squirrel使用SSL端口连接到我的DB2服务器。所以我更新了连接字符串中的端口号。现在我需要将服务器证书添加到Squirrel客户端信任库中,以便它可以信任服务器连接,但我不知道如何做?有人对此有什么想法吗?

以防万一,如果有人想完成同样的任务:

  • 找到
    JAVA\u HOME
    路径
  • 运行以下命令

    keytool-importcert-file e:/certificateName.ext-keystore\jre\lib\security\cacerts

  • 打开Squirrel,并修改连接别名。在连接字符串的末尾附加以下
    :sslConnection=true

  • 就这样,现在您可以通过SSL与数据库连接


  • 我成功地指定了以下
    javax.net.ssl
    环境变量

    -Djavax.net.ssl.trustStore=\clientkeystore
    -Djavax.net.ssl.trustStoreType=JKS
    -Djavax.net.ssl.trustStorePassword=
    
    这可以通过两种方式完成,我选择将其添加到
    squirrelsql.bat
    /
    squirrelsql.sh
    启动脚本中:

    e、 g

    松鼠sql.bat

    。。。
    启动“SQuirreL SQL Client”/B“%LOCAL_JAVA%”-Xmx256m-Dsun.awt.nopixfmt=true-Djavax.net.ssl.trustStore=C:/ssl/clientkeystore-Djavax.net.ssl.trustStoreType=JKS-Djavax.net.ssl.trustStorePassword=password-Dsun.java2d.noddraw=true-cp%SQuirreL\u cp%splash:“%SQuirreL_SQL\u HOME%/icons/splash.jpg”net.sourceforge.squirrel\u sql.client.Main%TMP\u PARMS%
    ...
    
    警告:一次只允许指定一个信任库。然而,有很多解决办法:例如

  • 将多个证书导入您的信任库
  • 导入根CA证书()
  • 有不同的开始脚本

  • 另请参见:

    只需编辑您的别名即可。单击属性。然后选择驱动程序属性并选择使用驱动程序属性添加这些属性:

    具有真实值的SSL连接

    sslTrustStoreLocation,jcekdb.jsk的路径作为值


    sslTrustStorePassword,将您的密码作为值。

    对我有效的是一个如下所示的URL:

    jdbc:db2://10.10.100.100:50010/DDEVD:sslConnection=true;sslTrustStoreLocation=C:/Data/db2trusttest/ts-02-new.jks;sslTrustStorePassword=changeit;
    

    (注意后面的分号)

    我看不到任何添加属性的选项?