解决【应用程序已被安全设置阻止】弹出框的手动设置方法

在包含Applet标签的页面,运行中较高的jdk版本(例如jdk1.7或jdk1.8),会弹出【应用程序已被安全设置阻止】的安全警告框(如下图),这是由于oracle在jdk1.7(主要涉及到jdk7u21, jdk7u45, jdk7u51版本)中引入了对java浏览器插件的安全策略,以解决Applet的安全漏洞问题,具体可参看我的另一篇博文:JDKApplet的安全性策略探究


该【应用程序已被安全设置阻止】安全警告框是jdk7u51以后的版本中才出现的,是客户端jre阻止未签名或自签名的jar运行的举措。可以按以下步骤进行设置:

一、在Java Control Panel中添加可信任站点--“例外站点”。

手动在java控制面板中添加例外站点,如下图:


二、 在IE浏览器或Java Control Panel中导入java签名证书。

由于在java控制台添加例外站点后,每次登录系统时都会弹出安全警告框,警告框如下图,这是由于jdk7u21对未签名或自签名的应用程序增加了安全警告,出现安全提示,要求先确认,然后才允许在浏览器中运行 Java 内容。此时可以通过添加客户端证书的方式来消除该对话框。可以在IE浏览器中或Java Control Panel中导入Java签名证书,两者任导入一个即可生效,建议都导入。


1、在IE中导入java签名证书ufgov. csr,此处必须导入到【受信任的根证书颁发机构】

手动导入IE证书(工具->Internet选项->内容->证书->受信任的根证书颁发机构->导入)如下图:

2、在Java Control Panel中导入java签名证书ufgov. csr,此处必须导入到证书类型为【签名者 CA】和【可信的证书】两处。

手动导入Java Control Panel证书(java控制面板->安全->证书->签名者 CA(或可信任的证书)->输入),由于导入方法一致,下面以【签名者 CA】导入过程举例如下图:


三、  设置Java Control Panel控制面板参数—混合代码。

如果客户端环境是jdk7u45,如果包含未签名的jar时候会弹出如下安全警告框(如下图),此时可以设置混合代码为【启用-隐藏警告并在保护下运行】。

手动设置如下图:

四、设置入口jar的manifest属性:Caller-Allowable-Codebase和Permissions

从7 Update 45 起,增加了针对 Java 应用程序执行的安全增强功能。当web页面发起LiveConnect对RIA的调用时,如果没有正确签名或配置,会出现一个新的安全警告,如下图。


最简单的方法是【不再对此应用程序和web站点显示此消息】打钩,点击【运行】,以后将不再弹出该对话框。

另外也可以通过设置manifest属性:Caller-Allowable-Codebase和Permissions解决:


相关推荐
©️2020 CSDN 皮肤主题: 数字20 设计师:CSDN官方博客 返回首页