2010-09-13 21 views
1

我开发了一个小程序。但是,当我的浏览器从网络服务器获取它时,它会弹出一个安全交战。我不希望这个消息来。意味着applet应该运行,而不会让最终用户感受到渗透。我怎样才能做到这一点?我需要让我的小程序被签名吗?如果是的话,我从哪里可以得到它签名?创建它的代价是多少?小程序的安全问题

回答

0

您的描述可能与一些问题有关,例如代码尝试做需要信任的事情。在这种情况下听起来并不像这种情况。如果未签名的代码试图执行需要信任的事情,它不会在启动时提示用户,但在尝试执行受信任的操作时(例如,在以后的JRE中跨站点访问)提示他们,或者仅凭失败发生AccessControlException或类似。

这可能是因为你的applet使用了多个Jars,并且遇到了Java 1.6.0_20中引入的mixed code restrictions。但是,症状听起来并不完全正确。

您的applet是否公开可用?我/我们可以访问的URL是什么?另外,如果你的applet试图跳出安全沙箱,那么它必须是可信的。这意味着代码必须经过数字签名,并在提示时由最终用户确定。没有其他办法了。

但它不需要CA颁发的代码签名证书。您可以使用SDK的工具推出自己的代码签名证书。我有一些小的演示。在签署代码之前编译和构建代码的代码项目。

+0

@ andrew.Thanks.Can您可以与我共享代码签名工具吗? – akp 2010-09-13 13:01:43

+0

代码签名工具是JDK/SDK的一部分。 – 2010-09-13 13:05:43

+0

对于演示,请尝试演示中提供的filetest.zip。 JNLP API FileContents对象(1)。 build.xml应该可以在任何现代IDE中生成和运行(E.G. Eclipse,Netbeans ..)查看build.xml以了解如何执行它。 1)http://pscode.org/jws/api.html#fs – 2010-09-13 13:09:11

0

您需要获得代码签名证书。如果你想避免所有的警告,可能是由一些“知名”的CA。证书本身花钱,但一旦拥有了它,您就可以使用它来签署尽可能多的applet(您自己签署)。