我目前有一个网站托管与Hostgator有一个Java上传小程序;但是,在页面访问时,浏览器会阻止Java applet执行。给出的原因是安全设置阻止了自签名应用程序的运行。签名证书和SSL
我的问题是,我怎么能通过这个,没有修改Java安全级别。我希望用户能够访问小程序而不会出现此错误,并且无需修改任何当前的浏览器设置。
(我使用keytool自己对小程序进行了签名)。
谢谢。
我目前有一个网站托管与Hostgator有一个Java上传小程序;但是,在页面访问时,浏览器会阻止Java applet执行。给出的原因是安全设置阻止了自签名应用程序的运行。签名证书和SSL
我的问题是,我怎么能通过这个,没有修改Java安全级别。我希望用户能够访问小程序而不会出现此错误,并且无需修改任何当前的浏览器设置。
(我使用keytool自己对小程序进行了签名)。
谢谢。
有两种方式:
你需要从一个可信方购买SSL证书,像Verisign或Thawte,或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\
将公钥给用户,并让他们加入自己的JVM(通常是手段的可信证书,导入你提供上述cacerts
证书文件但是需要使用keytool
和命令行,并且对于大多数用户来说很可能会很麻烦。
太棒了!谢谢您的帮助。上面的选项1似乎是最合理的,因为它不需要用户进一步做任何事情。 – JohnnyBoy 2014-11-08 14:00:59