我想使用 Connector/J(或其他兼容驱动程序)连接到 MySQL/MariaDB RDBMS,并直接向驱动程序提供 keystore 和信任库,而不是提供文件名磁盘上的 keystore /信任库。
我不再将 key 和证书存储在磁盘上,并且我希望避免为此目的将它们放入临时文件中。
最佳答案
我认为这是可能的,只要你愿意经历一系列的困难来实现它。
因为例如clientCertificateKeyStoreUrl
将接受一个 URL,您可以为其提供一个自定义协议(protocol)处理程序,例如 mykeysupplier://mykey
.
您可以write a custom URLConnection
class for mekeysupplier
,然后从 getInputStream()
方法返回您想要的任何字节。您还必须注册一个协议(protocol)处理程序和类似的东西。
所以,它有点丑陋得可怕,但我认为它可以工作,并且肯定会至少尝试这个想法的 PoC,因为它可能会解决我的问题(我发布了最初的问题)。
关于jdbc - 是否可以以编程方式向 Connector/J 提供 Java KeyStore 和 TrustStore?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/73143384/