【问题标题】:Warning relied on Caller-Allowable-Codebase attribute not shown always警告依赖于未始终显示的 Caller-Allowable-Codebase 属性
【发布时间】: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://*

根据Java documentation-

如果一个单独的星号 (*) 或一个星号与顶级 *.org 等域被指定为 Caller-Allowable-Codebase 属性,然后从 JavaScript 代码调用 向您的 RIA 显示安全警告。用户可以选择允许 呼叫或阻止呼叫。记住选择的选项也是 假如。如果用户选择记住选择,则无需进一步 同一 RIA 在收到呼叫时显示警告消息 来自同一来源的 JavaScript 代码。

我的 Web 应用程序中的 Java 脚本代码依赖于 Applet 的返回代码来在门户上显示适当的状态。显示的消息因返回的状态代码而异。但要发生这种情况,应该会出现 Java 警告窗口。在 Firefox v51 和 JRE 1.8.121 中,有时会出现此警告窗口。如果没有,则 JavaScript 和 Applet 之间的通信将不存在。警告窗口不一直出现可能是什么问题?

【问题讨论】:

  • 你能提供一个可重现的例子吗?请参阅 stackoverflow.com/help/mcvesscce.org 另外,您是否进行了调试(调试日志记录等)以了解当您没有收到警告对话框时发生了什么?
  • Java 小程序已经过时,将在 java 9 中被弃用,浏览器也正在移除对 java 插件的支持
  • 如果可能的话,用 HTML5 和 JS 重建你的前端,可能使用 jQuery 对你的 web 应用程序进行 AJAX 调用,并正确地构建它。如果没有,你的产品就注定要失败。此外,您的配置对于您的 Applet 来说是非常不安全的 - 任何代码库,所有权限。我真的希望你能很好地验证,因为那只是在乞求代码注入攻击。这是 Applet 无论如何都停止使用的主要原因之一 - 缺乏良好的安全性。
  • @AdamEdison-MusicEducator 似乎 java 小程序中提供了安全性。问题在于没有对小程序应用安全性并授予对所有内容的所有权限。我想大多数用户不会查看他们的 java 安全管理器设置,甚至没有应用安全管理器。

标签: java applet


【解决方案1】:

我使用相同的实时连接方法在小程序和 Javascript 之间进行通信。在过去的几年里,从 JRE6u45 到当前的 JRE8u131,我遇到了许多不同的警告屏幕。这取决于您现在面临的警告屏幕。

您是否每次都使用 Firefox? Firefox 不支持 Java 插件,因为某个版本 see here。仅供参考,Chrome 和 MS Edge 不支持 Java Applet。请检查您是否没有使用它们。

Caller-Allowable-Codebase 属性不应触发任何警告。如果它没有正确包含域,它应该阻止小程序运行。应该没有允许您运行的警告消息。

通常大多数警告屏幕来自 JRE 而不是浏览器。因此,您还可以检查以下项目:

  • 代码签名证书有效且未过期。
  • 转到 Java 控制面板,清除小程序缓存(在常规选项卡中)
  • 选中启用 Java 内容(安全选项卡)
  • 恢复安全提示(安全选项卡)
  • 启用混合代码以在需要时显示警告(高级选项卡)
  • 启用日志记录和跟踪,显示 Java 控制台(Java 控制面板 -> 安全选项卡)

请提供更多详细信息屏幕或您拥有的警告消息。

【讨论】:

    猜你喜欢
    • 2013-11-20
    • 2013-10-24
    • 2012-07-25
    • 1970-01-01
    • 1970-01-01
    • 2022-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多