java - 完全禁用 Java 安全机制?

标签 java security

我有一个非常特殊的问题,可能不适用于很多用户 - 抱歉!

我们运行一些气候控制设备,这些设备提供使用 java 的基于 Web 的管理前端。 这些设备已有几年历史,对它们的支持已过期。 运行浏览器(firefox 31.3.0)的系统是CentOS 6.5 Kernel 2.6.32 x86_64 整个网络都是私有(private)的。该浏览器专门用于管理气候 Controller 。 我们不得不在前一段时间更新到这个操作系统版本,它随 Java 1.7.0_71 一起提供。 (之前安装了Java 1.6)

现在每次打开其中一个设备的管理页面时,都会弹出一个安全警告,询问是否应该执行该应用程序。 也 ist 说不安全的小程序将来会被完全阻止。

我设法通过在 Java ControlPanel 中将安全级别设置得尽可能低来摆脱其他一些非常烦人的对话框,但我发现没有办法完全禁用 Java 安全。

目前剩下的唯一方法似乎是降级回 Java 1.6

有没有办法完全禁用java安全功能? 我知道这是不安全的、不专业的,而且是一件非常非常糟糕的事情。 但正如我所说:一个完全私有(private)的网络和气候 Controller 的管理页面是该系统上的 Firefox 唯一能看到的页面。

即使是非常肮脏的 hack 也会受到欢迎!

谢谢!

最佳答案

只需安装旧版本的 Java。

您可以使用 Java Rule Set控制哪些主机运行 V 1.6 等。这将允许您拥有 1.7,其安全性仍然完好无损,而 1.6 处于您需要的任何状态。

这实际上会给您一些体面的保证,即只有某些站点可以运行旧版本。不过,您必须在这个 jar 上签名。不过,您可以生成证书并将其安装到 java 中,没问题。

你会得到一些像这样的规则:

<rule>
    <id location="https://java.com/" />
    <action permission="run" version="SECURE" />
</rule>
<rule>
    <id location="http://climate.example.com/" />
    <action permission="run" version="1.6.0_31" />
</rule>

See here for the above example

我会推荐这个以防将来。如果有人插入这个设备,或者任何其他人必须支持应用程序而不知道你让 Java 处于易受攻击的状态,你可能会遇到一些严重的安全问题。这将创建一个更强大的设计模式,人们将拥有一个可供他们使用的安全 Java。

关于java - 完全禁用 Java 安全机制?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37066727/

相关文章:

java - com.google.appengine.tools.development.agent.runtime.Runtime 类无法访问该类的成员

java - 从 EC Point 和 ECParameterSpec 构造 EC 公钥给出无效的 x 值

asp.net - 使用网络表单上传病毒

Javascript 引用外部脚本文件 - 安全隐患

security - 具有外部用户访问控制的 MediaWiki 文档

java - 使用 @RequestScoped 和 @Produces 将用户实体注入(inject) Jersey 处理程序

java - 如何使用 JAXB 将 xml 字符串解码为对象

c# - .Net Core Web API,如果角色或策略匹配则授权操作

mysql - Docker中MySQL默认密码的安全性

java - 在recyclerview中突出显示行的问题