5

下記のIBM®ナレッジセンターを参考にWebsphere Liberty®のオプションでJDBCドライバーsecurityMechanismプロパティを設定しようとしましたが、 Websphere Liberty(2015年7月ベータ版)起動時に警告メッセージが表示されました。TLS_CLIENT_CERTIFICATE_SECURITYCWWKG0032W

Websphere LibertysecurityMechanismのオプションで JDBC ドライバーのプロパティーを設定する方法を教えてもらえますか?TLS_CLIENT_CERTIFICATE_SECURITY

証明書認証のための IBM Data Server Driver for JDBC and SQLJ サポート

IBM® Data Server Driver for JDBC and SQLJ は、DB2® for z/OS® バージョン 10 以降のデータ サーバーに接続するための証明書認証のクライアント サポートを提供します。

Websphere Liberty サーバーが始動したときのconsole.log

CWWKG0032W: Unexpected value specified for property
            [securityMechanism], value = [18]. >Expected value(s) are:
            [3][4][7][9][11][12][13][15][16].

securityMechanism="18"TLS_CLIENT_CERTIFICATE_SECURITY、次の方法で値を確認しました。

\>javac -classpath .;db2jcc4.jar; JDBCCheck
\>java -classpath .;db2jcc4.jar; JDBCCheck
  TLS_CLIENT_CERTIFICATE_SECURITY: 18

JDBCCheckクラス:

class JDBCCheck{
  public static void main(String args[]){
    com.ibm.db2.jcc.DB2SimpleDataSource dataSource =
                                   new com.ibm.db2.jcc.DB2SimpleDataSource();
    System.out.println( "TLS_CLIENT_CERTIFICATE_SECURITY: "
                        + dataSource.TLS_CLIENT_CERTIFICATE_SECURITY);
  }
}

server.xml :

<library id="db2-library">
  <fileset dir="lib" id="db2-fileset" includes="db2jcc4.jar db2jcc_license_cu.jar"/>
</library>

<dataSource id="db2" jndiName="jdbc/sampledb">
  <jdbcDriver libraryRef="db2-library"/>
  <properties.db2.jcc databaseName="SAMPLEDB" password="password" portNumber="10443"
              serverName="XX.XX.XX.XX" user="db2inst1" sslConnection="true"
              sslTrustStoreLocation="ssld/defaultTrustStore"
              sslTrustStorePassword="trustpassword" securityMechanism="18"/>
</dataSource>

更新 01:

  • db2jcc4.jarレベル/バージョンはDB2 10.5FP1
  • DB2® JCC プロパティーの代わりにCWWKG0032W汎用 JDBC ドライバーのプロパティーを使用すると、警告なしで Websphere Liberty が始動しましたpropertiesproperties.db2.jcc
4

3 に答える 3

2

IBM® Knowledge Center の次のトピックに基づく: Java EE Full Platform 7.0セクション: transaction > dataSource > properties.db2.jcc

現在、WebSphere Liberty は securityMechanism の以下の値のみをサポートしています。

  • value="3" name="CLEAR_TEXT_PASSWORD_SECURITY"
  • value="4" name="USER_ONLY_SECURITY"
  • value="7" name="ENCRYPTED_PASSWORD_SECURITY"
  • value="9" name="ENCRYPTED_USER_AND_PASSWORD_SECURITY"
  • value="11" name="KERBEROS_SECURITY"
  • value="12" name="ENCRYPTED_USER_AND_DATA_SECURITY"
  • value="13" name="ENCRYPTED_USER_PASSWORD_AND_DATA_SECURITY"
  • value="15" name="PLUGIN_SECURITY"
  • value="16" name="ENCRYPTED_USER_ONLY_SECURITY"

TLS_CLIENT_CERTIFICATE_SECURITY を Liberty の securityMechanism として追加したい場合は、RFE を開いて、Liberty 開発がこれをサポートする必要があることを認識できるようにすることをお勧めします。

更新:
これを回避するには、引き続き securityMechanism="18" を指定できますが、db2 固有の <properties.db2.jcc> 要素ではなく、一般的な <properties> 要素で指定するだけです (これは、あなたが考え出したように見えます)。すでに出ています)。

于 2015-06-29T17:51:49.040 に答える