mysql连接器java 5.1.42及以后版本中的服务器证书固定是否已损坏?

mysql连接器java 5.1.42及以后版本中的服务器证书固定是否已损坏?,java,ssl,ssl-certificate,mysql-connector,Java,Ssl,Ssl Certificate,Mysql Connector,是否在5.1.42版之后的版本中被破坏 这是我得出的结论,但5.1.42于2017年4月发布,类似的内容可能会影响更多人。我发现的信息不足表明我忽略了某些东西,或者: 许多未更新5.1.41,或 未使用verifyServerCertificate=true(),或 未使用pin来锁定证书 背景 在版本5.1.42之前(直到5.1.41),给定如下服务器证书链: chain[0]:MySQL服务器的证书 +-链[1]:中间CA +-链[2]:根CA 我可以将“MySQL服务器的证书”(仅限

是否在5.1.42版之后的版本中被破坏

这是我得出的结论,但5.1.42于2017年4月发布,类似的内容可能会影响更多人。我发现的信息不足表明我忽略了某些东西,或者:

  • 许多未更新5.1.41,或
  • 未使用verifyServerCertificate=true(),或
  • 未使用pin来锁定证书
背景 在版本5.1.42之前(直到5.1.41),给定如下服务器证书链:

chain[0]:MySQL服务器的证书
+-链[1]:中间CA
+-链[2]:根CA
我可以将“MySQL服务器的证书”(仅限于此)放入密钥库,将其另存为
.jks
文件,并在连接时将此文件指定给
trustCertificateKeyStoreUrl
属性。这确保了我只连接到“MySQL服务器证书”描述的服务器

这是由
mysql连接器java
by执行的。
sun.security.ssl.X509TrustManagerImpl
的内部实现,它在验证之前正确地从信任库中删除

这将处理以下任何情况:


  • {chain[0]*}。我不明白为什么MySQL开发人员应该自己修改JSSE,或者更改SSL.com的语义。我不明白为什么MySQL开发人员应该自己修改JSSE,或者更改SSL的语义。