我们正在尝试使用具有自签名证书的TLS测试连接到MySQL数据库的密钥库。 运行此密钥斗篷的容器已经有一个信任库和一个要使用的密钥库文件,但是我找不到有关如何进行操作的文档。
我看到您可以在standalone.xml中使用这样的块添加信任库:
<spi name="truststore">
<provider name="file" enabled="true">
<properties>
<property name="file" value="${env.APP_CONFIG_SSL_DATABASE_DIR}/truststore"/>
<property name="password" value="${env.APP_STORE_PASS}"/>
<property name="hostname-verification-policy" value="ANY"/>
<property name="disabled" value="false"/>
</properties>
</provider>
</spi>
但是密钥库呢? 在常规的JAVA应用程序中,我需要使用以下内容来运行我的java jar文件:
java -Djavax.net.ssl.trustStore=${APP_TRUSTED_SERVERS} -Djavax.net.ssl.trustStorePassword=${APP_STORE_PASS} -Djavax.net.ssl.keyStore=${APP_KEYSTORE_CLIENT} -Djavax.net.ssl.keyStorePassword=${APP_STORE_PASS} -jar target/myjarfile.jar
在我的信任库中,我需要存储来自MySQL的CA证书,并在我的密钥库中存储要连接的客户端证书。
然后在我的连接URL块中,我只定义一些布尔值,例如useSSL,requireSSL和verifyServerCertificate。
谢谢