随着applet安全性最近的变化以及由此产生的问题(主要是LiveConnect),我想知道是否有一种方法可以从applet代码中检查当前的安全基线,并将其与当前的JRE版本进行比较。这样就可以采取一些行动,比如警告用户,而不是默默地失败。
编辑:为了澄清,从Java 7开始,Oracle引入了“安全基线”,这是被认为是“安全”的最低JRE版本。例如:目前它是(我想) 1.7.0_45。因此,如果用户安装了较低的JRE,则applet将启动,但有些功能无法工作。在我的例子中,JavaScript到applet调用被阻塞。applet插件动态地检查当前基线是什么,所以我想知道applet是否有确定这个基线的方法。
发布于 2014-02-05 17:24:26
您可能指的是以下文章:安全基线影响。据我所知,目前没有任何机制来检测目前的基线-但可能有一个解决办法:
不久前,我为安装程序编写了一个自动java版本检查机制。您需要(a)和对java基线版本控制机制(b)的理解。如果您已经启动了applet,并且在执行任何liveconnect操作之前,您将检查java版本和当前基线,并向用户显示一些错误。
有关(b):如果我正确理解基线,则如下所示:
7u25是以前的安全基线。7u40“只”包含错误修复,并且不包含安全补丁-> --没有必要进行更新。当7u 45发布时,此关键修补程序更新包含安全修补程序,并提高了安全基线->用户必须更新的内容。
更新:--我读过关于新版本号方案的文章。基本上,如果它只是一个有限的更新(添加新功能和非安全修复),基线就不会被提高。对于CPU (关键补丁更新),基线将被提高,版本号将包含奇数。->以便您可以检查补丁版本是否奇怪.更新端
关于(A),检索当前版本需要三个步骤:
https://stackoverflow.com/questions/21551391
复制相似问题