我是任何应用程序的安全部分的新手。我对数字证书有非常基本的了解。我听说像 Applets 和 Java web start 这样的应用程序在客户端计算机上运行并从远程计算机访问其服务需要进行数字签名才能不受任何限制地执行活动。
我有一个尚未签名的 Java Web 启动应用程序,每次用户访问它时都会显示一些安全警告。
以下是我的 Java web start 应用程序的详细信息。
- 应用程序使用 Java web-start 技术与运行在 Tomcat7 上的 Servlet 进行通信。
- 数据库是 SQL Server 2012。
- 服务器机器:Windows 64 位 2008 R2 企业服务器。
- Java 7 更新 25 64 位
- JWS-app 和 Web-app 所需的所有文件(JNLP、jarfiles)都打包为单个 war 文件并部署到 Tomcat7。
任何人都可以为以下查询提供一些想法:
- 在应用程序中签署 jar 文件是避免安全警告的唯一方法吗?
- 签署 jar 文件是否收费?有什么方法可以免费给罐子签名吗?
- 目前,在Tomcat7上作为JavaEE应用程序运行的服务是由Web启动应用程序通过http连接访问的。对 jar 进行签名后,我是否需要使用 https 而不是 http?
- 我发现我需要在 .jnlp 文件中添加以下标签:
<security><all-permissions/></security>
- 除了上述更改之外,我还需要在 Java 或 xml 文件中做些什么吗?
注意:对于通过 Internet 访问应用程序的用户,我们会收到一些连接重置错误。在将 java 版本从 Java5 升级到 Java7 后,我们注意到此错误。阅读一些安全策略已更改的地方,现在通过网络下载未签名的 jar 文件有一些问题。但不完全确定错误是由于升级到 java 版本还是由于应用程序代码的某些更改,因为我们在日志文件中除了连接重置之外没有任何异常。
提前致谢