我正在做一个项目,客户端现在从Java 6迁移到Java 8,我们在项目中下载一个jnlp文件来运行一个java应用程序。在Java 6中,我们没有任何问题,但是在迁移到Java 8之后,我们面临着安全问题,因为我们不能再使用自签名的jar了。客户给了我们一张证书。,我的问题是如何在Java8?中运行那个jnlp文件,我已经尝试过对jnlp文件中使用的jar签名。我使用了Java提供的仙人掌密钥存储库。我运行了以下命令将证书添加到Java密钥存储库中:
密钥工具-import -keystore cacerts -alias my别名-file“my证书” -keystore仙人掌myjar别名
现在,在执行此jarsigner时,我得到了以下错误:没有找到证书链:my别名
我应该怎么做才能使jnlp在机器中运行,因为我甚至不能签署我们使用的jar?jnlp模板如下:
<information>
<title>${appTitle}</title>
<vendor>Vendor</vendor>
<homepage href="${codeBase}" />
<description>Java App</description>
</information>
<security>
<all-permissions/>
</security>
<resources>
<j2se version="1.6+" />
<jar href="${jarPath}" />
<#if jarDependenciesPath??>
<#list jarDependenciesPath as jarDependencyPath>
<jar href="${jarDependencyPath}" />
</#list>
</#if>
</resources>
<application-desc
name="${appTitle}"
main-class="${mainClass}"
width="300"
height="300">
<#list args as arg>
<argument>${arg}</argument>
</#list>
</application-desc>
发布于 2018-03-16 09:43:29
看来你的证书不太好。使用良好的证书。
或者,您可以在JAVA控制台中添加异常以绕过安全性。
https://stackoverflow.com/questions/49023828
复制相似问题