Java 7u51:LiveConnect (JavaScript) 由于安全设置而被阻止
Posted
技术标签:
【中文标题】Java 7u51:LiveConnect (JavaScript) 由于安全设置而被阻止【英文标题】:Java 7u51: LiveConnect (JavaScript) blocked due to security settings 【发布时间】:2014-02-27 16:11:57 【问题描述】:您可以通过打开两次 .txt 文件(使用双击或“编辑文档”)或按“地球”来检查问题 here。 它不会在第二次和任何进一步的尝试中打开(在 Firefox 和 Chrome 中)。 Java 控制台中只出现了一个新行:
liveconnect: Security Exception: LiveConnect (javascript) blocked due to security settings.
证书有效:
这里是控制台中奇怪的行:
security: Trust for: http://...OpenDocument.jar has ended: Thu Jan 01 02:00:00 EET 1970
security: Validate the certificate chain using CertPath API
basic: Plugin2ClassLoader.getPermissions CeilingPolicy allPerms
security: Validate the certificate chain using CertPath API
我尝试添加 Application-Library-Allowable-Codebase 清单属性,尝试添加时间戳。
如何满足安全约束以避免这种安全异常?
Update1:小程序重新加载后可以再次运行。
Update2: JRE 版本 1.7.0_45 下不存在该问题
【问题讨论】:
【参考方案1】:如果你使用 maven 使用这个设置
<build>
<plugins>
<!--Set manifest file-->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<version>2.5</version>
<configuration>
<archive>
<addMavenDescriptor>false</addMavenDescriptor>
<manifest>
<addDefaultSpecificationEntries>true</addDefaultSpecificationEntries>
<addDefaultImplementationEntries>true</addDefaultImplementationEntries>
</manifest>
<!--Add manifest properties-->
<manifestEntries>
<Permissions>all-permissions</Permissions>
<Trusted-Library>true</Trusted-Library>
<Application-Library-Allowable-Codebase>*</Application-Library-Allowable-Codebase>
<Caller-Allowable-Codebase>*</Caller-Allowable-Codebase>
<Codebase>*</Codebase>
</manifestEntries>
</archive>
</configuration>
</plugin>
</plugins>
</build>
【讨论】:
谢谢,但很遗憾,我没有使用 Maven。 我也面临同样的问题。如何找到清单文件?【参考方案2】:通过将这些行添加到清单来修复(感谢this answer):
Trusted-Library: true
Caller-Allowable-Codebase: *
现在清单如下所示:
Manifest-Version: 1.0
Trusted-Library: true
Application-Library-Allowable-Codebase: *
Application-Name: ...
Permissions: all-permissions
Caller-Allowable-Codebase: *
Main-Class: ...
Codebase: *
此问题已在 Windows 和 MacOS 环境中修复。security: Trust for: .jar has ended
问题未修复。
【讨论】:
以上是关于Java 7u51:LiveConnect (JavaScript) 由于安全设置而被阻止的主要内容,如果未能解决你的问题,请参考以下文章
java.security.AccessControlException:访问被拒绝(“ java.security.SecurityPermission”“ authProvider.SunMSCA
java Examples-src-Main-OtherComparisonOperations-compareEncryptedDocsWithResultAndTargetExtension.ja