OS X 上 Java Web Start 应用程序的未识别开发人员

在 Mac OS X 10.9 上,已签名的 Java Web Start 应用程序默认被阻止,并显示以下消息:

"application.jnlp" can't be opened because it is from an unidentified developer.

我知道可以削弱安全检查以允许任何应用程序运行,但这需要最终用户的手动干预。

是否可以对 Java Web Start 应用程序进行“签名”,使其被识别为源自已识别的开发人员?

谢谢


答案 1

在最新的OSX版本中,Apple已更改其安全模型,仅支持Mac App Store和已确定的开发人员的应用程序。在大多数情况下,这会禁止 jnlp/java-web-start 应用程序启动。

如果这是受信任的应用程序,则可以通过更新系统设置来覆盖这些设置,如下所示:

系统偏好设置 ->安全和隐私 ->(解锁窗口) -> 允许从以下位置下载应用程序:(选择任何地方)

Settings Screen Shot

在某些情况下,您可能还需要更新 Java 安全性首选项

系统偏好设置 -> Java ->安全性 ->(选择中)

Settings Screen Shot

调整这些时要小心。这些设置将为您打开流行的攻击媒介,攻击者可以利用Java运行时(Java 0天)内的漏洞。


答案 2

这是一篇相关文章。似乎无法绕过安全性,全部允许,解决方法。

OS X 10.8 网守和 Java 小程序

来自 Apple 技术支持在上面的帖子中。

身份不明的开发者“是指 Mac App Store 或开发者 ID 标识的开发者以外的来源。请注意,Java 小程序不能参与开发人员 ID 程序。

我正在考虑构建一个本机应用程序,并使用自定义Web协议,而不是类似于skype,您可以在其中看到URI中 skype://。苹果似乎不会在不久的将来改变他们对java小程序的立场。它很可能会变得更加受限,最终只是像iOS上的闪光灯一样被禁用。