2014-10-06 67 views
1

我使用SSL運行嵌入式碼頭服務器。 我想在jetty運行時更新keystore/truststore的內容,並讓jetty接受這些更改。在Jetty運行時更新密鑰庫/信任庫

我給jetty的安全連接器的keystore對象將始終提供最新的值。問題在於SSLContext會緩存啓動時密鑰存儲庫的任何內容,並且我可以考慮更新它的唯一方法是重新加載SSLContext。

唯一能解決這個問題的方案就是擴展SSLContextSpi,並確保它具有來自keystore/truststore的最新信息。但我真的想避免這種情況。

有沒有更好的方法來做到這一點?

+0

JVM在內部爲SSLContext執行的緩存量意味着您將爲您裁剪您的工作。祝你好運,並注意內存泄漏! – 2014-10-06 18:37:35

回答

0

我們最終想到的解決方案是關閉所有現有的連接器並打開新的連接器,基本上可以重新加載密鑰庫/信任庫的內容,而不必完全重新啓動jetty。