【发布时间】:2012-06-23 14:35:13
【问题描述】:
我们有一个 Java 小程序需要在完全信任的情况下运行。
在开发和预发布测试期间,我们使用自签名证书对其进行签名(生产版本使用真实代码签名证书进行签名)。
但是当我们尝试在 OS X 10.8 的预版本上启动自签名小程序时,我们无法再选择允许它运行。 “允许”按钮被禁用:
如果我按“显示详细信息...”,我可以选择“始终信任”证书,但这没有区别:
它适用于 OS X Lion 10.7 上相同版本的 Java JRE,所以我怀疑这是操作系统的问题,而不是 JRE。
有什么解决方法吗?
我不希望使用真实的代码签名证书进行测试:使用真实的代码签名证书进行签名意味着我的公司断言该小程序是安全的并且应该被信任。在我们对其进行测试之前,我们几乎无法断言。
【问题讨论】:
-
“我不希望使用真正的代码签名证书进行测试。”如果人们提出奇怪且看似武断的要求的理由,我更愿意。
-
@Andrew:我已经添加了这个要求的推理。
-
谢谢,这个原因并不像我想象的那么奇怪。好问题。 +1 顺便说一句:1)您是否检查了该 JRE 的“错误数据库”? 2) 小程序是否与 JavaScript 交互? (Appleteer 可以在没有 JS 的简单 HTML 中运行小程序 - 它没有安全沙箱)。 3) 你能在操作系统上运行另一个 JRE 来测试小程序吗?
-
这与java and signed jars on Mac 有一些可疑的相似之处(OS X、签名的 Jars、安全故障)和一些差异(自签名与纯基于 OS 版本和不同版本的 OS X)。
-
@Andrew Thompson:是的,购买通用名称中带有“仅测试”的新代码签名证书肯定会起作用。 Java 喊得更多(在它工作的平台上),但它是可行的。我只是觉得奇怪的是没有解决方法 - 代码签名证书每年花费大约 100 美元,所以这对于在 OS X 上开发的业余爱好者来说是一个障碍。
标签: java macos applet code-signing osx-mountain-lion