【问题标题】:Permissions attribute required for all jars of a webstart application?webstart应用程序的所有jar都需要权限属性吗?
【发布时间】:2014-08-09 22:44:59
【问题描述】:

从 Java 7.0.45 开始,webstart 应用程序应该在 manifest.mf 文件中定义权限属性。

但是对于应用程序使用的每个 jar 或仅包含主类的jar 是否需要此条目?

我在问,因为我已经为主 jar 设置了这个条目,但是 java webstart(来自 Java 8)仍然告诉我:

此应用程序将在未来的 Java 安全更新中被阻止,因为 JAR 文件清单不包含 Permissions 属性。请联系发布者以获取更多信息。

编辑: 嗯,奇怪的事情。我刚刚发现包含主类的 jar 被放在了 JNLP 文件中类路径的最后一个位置。它把它放在顶部,警告消失了。

【问题讨论】:

  • 您的标题与您的问题不一致。为了完整起见,您不需要 any 应用程序中的 all-permissions:只有应用程序实际需要的权限。
  • @EJP 你说得对,标题有点误导。这个问题实际上不是关于所有权限,而是关于Permissions 属性。

标签: java permissions java-web-start


【解决方案1】:

只有主 jar 需要它 - the Java 8 documentation

主 JAR 文件的清单中需要此属性 RIA、辅助 JAR 文件和扩展不需要具有 权限属性。

但是,当 Oracle 首次推出此功能时,存在一些错误(如 this onethis one),并且可能仍然存在一些问题。我注意到关于第二个引用错误的几份报告都已被关闭为“无法复制”。您可能需要检查您的方案是否可以在最新版本的 Java 中按预期工作。

【讨论】:

    【解决方案2】:

    但是应用程序使用的每个 jar 是否都需要此条目,还是仅包含主类的 jar 需要此条目?

    每个罐子。 任何未签名(或未正确签名)的组件都可能是“安全船上的漏洞”。有一个洞,船就会下沉。出于这个原因,一个应用程序。只有所有部分都是安全的,才被认为是受信任的。

    【讨论】:

    • 我想你误解了我的问题。你说得对,每个罐子都必须签名。但我的问题是每个 jar 的清单是否需要 Permissions 属性集。好像没有这个必要。
    猜你喜欢
    • 2014-12-31
    • 2017-11-04
    • 2011-11-12
    • 2012-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-04-11
    • 2017-01-21
    相关资源
    最近更新 更多