2014-11-08 212 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