所以,這是我拍攝的場景。是否有可能從無簽名的java代碼訪問密鑰庫中的密鑰?
我有一個應用程序服務器。在該應用程序服務器上是受密碼保護的密鑰庫文件。密鑰庫文件內部是一個私鑰,必須通過編程方式從已部署的戰爭文件中訪問。
我不想在我的代碼中存儲密碼。
戰爭文件是建立在一個單獨的開發機器上。在構建時,提供一個開發人員私鑰,簽署戰爭文件。
說開發者的公共證書已被導入到應用程序服務器的密鑰庫信任證書中。
從代碼中,我希望能夠加載密鑰庫並檢索私鑰,而不必爲密鑰提供密碼。我希望讓由可信證書籤名的代碼具有足夠的身份驗證能夠成功檢索密鑰。
如果惡意用戶訪問應用程序服務器,他們將無法修改簽名代碼,因爲這會破壞簽名。他們也不能部署他們自己的代碼,因爲他們沒有可信的私鑰。最後,他們將無法將自己的證書作爲可信證書導入密鑰庫,因爲他們沒有密鑰庫密碼。
這可能嗎?如果不是,那爲什麼不呢?
我沒有得到你的問題,但是這似乎涉及: [鏈接](http://stackoverflow.com/questions/4926290/java-keystore-and-password-settings) 很抱歉,如果我錯了這裏。 – Sid 2011-05-17 22:11:29
從我的評論中收集到的另一個解決方案是將JNDI與您的應用服務器結合使用。因此,您不必在代碼中保存密碼。 – Sid 2011-05-17 22:15:14