【发布时间】:2017-02-09 21:48:52
【问题描述】:
我在签名的 Java 小程序中有以下清单信息。我的构建环境很旧,目前仅限于 JDK 1.6。
Manifest-Version: 1.0
Implementation-Vendor: Foo, Inc.
Application-Library-Allowable-Codebase: *
Application-Name: FooBar
Permissions: all-permissions
Sealed: true
Created-By: 1.6.0_20 (Sun Microsystems Inc.)
Caller-Allowable-Codebase: *
Codebase: https://*
如果一个单独的星号 (*) 或一个星号与顶级 *.org 等域被指定为 Caller-Allowable-Codebase 属性,然后从 JavaScript 代码调用 向您的 RIA 显示安全警告。用户可以选择允许 呼叫或阻止呼叫。记住选择的选项也是 假如。如果用户选择记住选择,则无需进一步 同一 RIA 在收到呼叫时显示警告消息 来自同一来源的 JavaScript 代码。
我的 Web 应用程序中的 Java 脚本代码依赖于 Applet 的返回代码来在门户上显示适当的状态。显示的消息因返回的状态代码而异。但要发生这种情况,应该会出现 Java 警告窗口。在 Firefox v51 和 JRE 1.8.121 中,有时会出现此警告窗口。如果没有,则 JavaScript 和 Applet 之间的通信将不存在。警告窗口不一直出现可能是什么问题?
【问题讨论】:
-
你能提供一个可重现的例子吗?请参阅 stackoverflow.com/help/mcve 和 sscce.org 另外,您是否进行了调试(调试日志记录等)以了解当您没有收到警告对话框时发生了什么?
-
Java 小程序已经过时,将在 java 9 中被弃用,浏览器也正在移除对 java 插件的支持
-
如果可能的话,用 HTML5 和 JS 重建你的前端,可能使用 jQuery 对你的 web 应用程序进行 AJAX 调用,并正确地构建它。如果没有,你的产品就注定要失败。此外,您的配置对于您的 Applet 来说是非常不安全的 - 任何代码库,所有权限。我真的希望你能很好地验证,因为那只是在乞求代码注入攻击。这是 Applet 无论如何都停止使用的主要原因之一 - 缺乏良好的安全性。
-
@AdamEdison-MusicEducator 似乎 java 小程序中提供了安全性。问题在于没有对小程序应用安全性并授予对所有内容的所有权限。我想大多数用户不会查看他们的 java 安全管理器设置,甚至没有应用安全管理器。