2014-11-08 211 views
0

我目前有一個網站託管與Hostgator有一個Java上傳小程序;但是,在頁面訪問時,瀏覽器會阻止Java applet執行。給出的原因是安全設置阻止了自簽名應用程序的運行。簽名證書和SSL

我的問題是,我怎麼能通過這個,沒有修改Java安全級別。我希望用戶能夠訪問小程序而不會出現此錯誤,並且無需修改任何當前的瀏覽器設置。

(我使用keytool自己對小程序進行了簽名)。

謝謝。

回答

1

有兩種方式:

  1. 你需要從一個可信方購買SSL證書,像VerisignThawte,或any other (cheaper) trusted provider。然後,您需要使用此證書籤名您的小程序。由於這種證書將由全球信任方提供,您的用戶的JVM將自動信任它。

    如果您決定使用便宜的ssl提供程序,請確保它的根證書位於JVM的可信證書的默認列表中。您可以檢查,通過列出證書,附帶安裝的Java的 - 這樣的:

    keytool -list -keystore cacerts -storepass changeit 
    

    其中changeit是默認cacerts密鑰存儲密碼和cacerts文件可以在怨婦JRE安裝lib\security文件夾中找到 - 在Windows上,這將是這樣的:

    c:\Program Files (x86)\Java\jre[version]\lib\security\ 
    
  2. 將公鑰給用戶,並讓他們加入自己的JVM(通常是手段的可信證書,導入你提供上述cacerts證書文件但是需要使用keytool和命令行,並且對於大多數用戶來說很可能會很麻煩。

+0

太棒了!謝謝您的幫助。上面的選項1似乎是最合理的,因爲它不需要用戶進一步做任何事情。 – JohnnyBoy 2014-11-08 14:00:59