在 OS X Mountain Lion 上具有自签名证书的 Java 小程序

我们有一个Java小程序,需要完全信任地运行。

在开发和预发布测试期间,我们使用自签名证书对其进行签名(生产版本使用真正的代码签名证书进行签名)。

但是,当我们尝试在OS X 10.8的预关系上启动自签名小程序时,我们再也无法选择允许它运行。“允许”按钮只是被禁用:

Disabled "Allow" button

如果我按“显示详细信息...”我可以选择“始终信任”证书,但这没有任何区别:

enter image description here

它在OS X Lion 10.7上与相同版本的Java JRE一起使用,所以我怀疑这是操作系统的问题,而不是JRE的问题。

是否有任何解决方法?

我宁愿不使用真正的代码签名证书进行测试:使用真正的代码签名证书进行签名意味着我的公司断言小程序是安全的,应该受到信任。在我们测试它之前,我们很难断言这一点。


答案 1

这是Mac OS X中的新安全功能,默认情况下,只允许来自Mac Store和受信任开发人员的应用程序在那里运行。幸运的是,它很容易更改,您必须在Mac OS X首选项中允许这样做。

转到首选项 - >安全和隐私,然后单击挂锁以允许更改。

然后在“允许从中下载应用程序”中选择“任何地方”。

之后,Java对话框中的按钮将被启用。

Mac OS X Security & Privacy Preferences


答案 2

如果您收到“”消息,则需要进入并将站点添加到例外列表或将减少到 。Application Blocked by Security SettingsSystem Preferences: Java: Securitysecurity levelMedium