Falha de conexão com o banco de dados devido a erro de SSL ou TSL

Durante um upgrade do Maximo® Manage 8.5.x para 8.6.x ou versões mais recentes, com um banco de dados Db2® , o processo para no ponto de ativação da área de trabalho. Um erro Security Socket Layer (SSL) ou Transport Layer Security (TSL) é a causa e a solução é especificar a versão SSL explicitamente na cadeia de conexão JDBC .

Plano de Fundo

A mensagem de erro do pod do pacote configurável do servidor pode ser semelhante à seguinte.
25 Apr 2023 04:24:59:367 [ERROR] [sql] BMXAA6421E - The system could not connect to the JDBC source: jdbc:db2://c-db2wh-1640014734526263-db2u-engn-svc.mas-cpd.svc:50001/BLUDB:sslConnection=true;Unsupported protocolSSL_TLSv2
25 Apr 2023 04:24:59:368 [ERROR] [maximo] BMXAA6538E - Failed to initialize MAXIMO business object services.
psdi.util.MXSystemException: access#DBConnectFail
Caused by: java.lang.IllegalArgumentException: Unsupported protocolSSL_TLSv2
          at sun.security.ssl.ProtocolVersion.namesOf(ProtocolVersion.java:292) ~[?:?]
          at sun.security.ssl.SSLSocketImpl.setEnabledProtocols(SSLSocketImpl.java:362) ~[?:?]
          at com.ibm.db2.jcc.t4.w.run(w.java:123) ~[db2jcc.jar:?]
          at java.security.AccessController.doPrivileged(AccessController.java:747) ~[?:?]
          at com.ibm.db2.jcc.t4.a0.a(a0.java:435) ~[db2jcc.jar:?]
          at com.ibm.db2.jcc.t4.a0.<init>(a0.java:97) ~[db2jcc.jar:?]
          at com.ibm.db2.jcc.t4.a.b(a.java:367) ~[db2jcc.jar:?]
O log do operador exibiria uma mensagem para indicar o erro de TLS, conforme mostrado no exemplo a seguir:
[0;31mfatal: [localhost]: FAILED! => {"changed": true, "rc": 1, "return_code": 1, "stderr": "", "stderr_lines": [], "stdout": "Calling isValidDBConnection ...\nValidating DB connection from script /opt/IBM/SMP/maximo/is-updatedb-needed.sh using the querycount utility to check for the maxvars table.\nDB Connection return code = 255\nNote: A return code of 0 (table found) or 1 (table not found) indicates a successful query via a valid DB connection and that an exception has not occurred. Otherwise, there's a problem connecting to the database.\nisvalidconn.log\n==================\nDEBUG***:queryType=table\nException\njava.lang.IllegalArgumentException: Unsupported protocolSSL_TLSv2\n\tat java.base/sun.security.ssl.ProtocolVersion.namesOf(ProtocolVersion.java:292)\n\tat java.base/sun.security.ssl.SSLSocketImpl.setEnabledProtocols(SSLSocketImpl.java:362)\n\tat com.ibm.db2.jcc.t4.w.run(w.java:123)\n\tat java.base/java.security.AccessController.doPrivileged(AccessController)

Informações necessárias para o suporte IBM

Colete dados MustGather para Maximo Application Suite usando a ferramenta MustGather . Para obter mais informações, consulte Leia primeiro: Colete MustGather dados para IBM®Maximo Application Suite usar a MustGather ferramenta.

Resolução

  1. Na interface de usuário Maximo Application Suite, atualize o URL do banco de dados de uma das seguintes maneiras.
    • Acesse Áreas de trabalho no menu e selecione o bloco Gerenciar . Clique em Conexão do banco de dados na seção Integração e dependências .
    • Como alternativa, acesse configurações no menu e clique em Conexão com o banco de dados na seçãoArmazenamento .
      Observação: A alteração no URL do banco de dados afeta todos os aplicativos do Maximo Application Suite, não apenas Maximo Manage.
  2. Clique no ícone Editar e verifique se a propriedade sslVersion=TLSv1.2 está incluída no URL do banco de dados. O URL a seguir é apenas um exemplo.
    jdbc:db2://HOSTNAME:50001/BLUDB:sslConnection=true;sslVersion=TLSv1.2;
Para obter mais informações, consulte Problemas conhecidos.