解决【应用程序已被安全设置阻止】弹出框的手动设置方法
在包含Applet标签的页面,运行中较高的jdk版本(例如jdk1.7或jdk1.8),会弹出【应用程序已被安全设置阻止】的安全警告框(如下图),这是由于oracle在jdk1.7(主要涉及到jdk7u21, jdk7u45, jdk7u51版本)中引入了对java浏览器插件的安全策略,以解决Applet的安全漏洞问题,具体可参看我的另一篇博文:JDK中Applet的安全性策略探究。
该【应用程序已被安全设置阻止】安全警告框是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解决:
原文地址: https://blog.csdn.net/oTengYue/article/details/45460525
本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
相关文章