Java Web Start和Security

时间:2014-06-10 18:58:09

标签: java swing java-web-start

我刚刚向我指出,我的博客中的Java Web Start应用程序,例如我的Key Bindings条目,由于以下安全性错误而不再起作用:

enter image description here

在进行一些调查后,我确定JDK7中的安全性已得到改善,并且Security TabJava Control Panel的{​​{1}}上的默认设置设置为{{ 1}}阻止应用程序运行。如果您确实将此设置更改为Windows Control Panel,那么您可以选择接受该应用,它将会运行。我猜大多数人都不想这样做,所以看起来我需要High

问题是我真的不了解整个签约过程。

目前我首先使用如下命令创建.jar文件:

Medium
然后我按如下方式创建.jnlp文件:

sign my jar file

将.jar和.jnlp文件上传到服务器,并使用以下HTML启动Web Start应用程序:

jar cfev KeyBindings.jar KeyBindings KeyBindings*.class

有人可以向我展示我需要遵循的额外步骤,以便创建受信任的应用程序(或签名的应用程序,无论正确的术语是什么)。

我目前没有将任何IDE用于我的Java Web Start应用程序。我确实安装了Eclipse但从未使用过它。尝试使用Eclipse生成签名的.jar文件会不会更好?

更新

这个过程比我想象的更复杂,更昂贵。我不想向证书颁发机构支付签署我的.jar文件的费用。此外,我目前使用的是一个不支持SSL的免费网站托管网站,因此我无法使用已签名的.jar文件,因为我不想找到新的托管网站。

由于我只是为了好玩我的博客,我不想承担使用签名.jars的额外费用,所以我想我必须找到一种不同的方式来演示代码。

谢谢你的帮助。

2 个答案:

答案 0 :(得分:4)

您的小程序必须由知名证书颁发机构(CA)签名。

你可以使用它们中的任何一个(Digicert,Thawte,Verisign等......)

CA会说明如何让您的jar文件签名。

以下是Digicert的文档:

Java Code Signing Certificate Guide - Digitally Sign Code for Java Applets with Integrated Identity Assurance

答案 1 :(得分:3)

使用概述here的方法,我继续使用自签名证书从受信任的站点部署开源Swing应用程序。检查SHA1 fingerprint可确保我收到我签名的JAR,而不会放松安全性。这个Subway模拟就是一个完整的例子。