2011-11-29 19 views
0

我希望得到您的意見。我正在開發一個Servlet,它必須符號它發送到端點的請求。將PrivateKey存儲在ServletContext中

,以避免從文件中讀取服務器的密鑰庫,加載它,並得到私鑰,我做這一切的實現ServletContextListener的監聽器。這樣做只有在servlet被初始化(部署)時纔會完成。

一旦我得到私鑰,我將它存儲在應用程序的ServletContext中。你認爲這是一個好的設計決定嗎?

在此先感謝。

回答

1

無論您選擇哪種解決方案,都會在某個時間在內存中擁有私鑰。因此,任何可以訪問內存的黑客都可以找到獲得這個私鑰的方法。加載一次並在啓動時將其存儲在內存中看起來對我來說是一個很好的解決方案。只要確保服務器不易被惡意人員訪問。

+0

或者您可以在servlet init中讀取它,並直接將其存儲在servlet中。不需要聽衆。 JB更簡單但安全性相同。 –

+0

謝謝JB!我同意。據推測,服務器不會從「外部」看到。 – Gaucho

+0

Andres,你是對的,但我更喜歡在應用程序部署時執行加載密鑰代碼。謝謝! – Gaucho