部署规则集是否允许JNLP在不签名Jar的情况下运行? [英] Will Deployment Rule Sets Allow JNLP To Run Without Signing Jars?
问题描述
当我运行JNLP时,它会不断失败,并显示"com.sun.deploy.net.JARSigningException:在资源中找到未签名的条目:http://......"
When I run my JNLP it keeps failing with "com.sun.deploy.net.JARSigningException: Found unsigned entry in resource: http://......"
我的JNLP是由一个类动态生成的,最终看起来像这样:
My JNLP is generated on the fly by a class and ends up looking like this at the top:
<jnlp spec="1.0+" codebase="http://myhost.com:8080/webstart" href="jnlp?app=com.mycompany.LaunchWebstart">
我创建了一个非常广泛的ruleset.xml
I created a very broad ruleset.xml
<ruleset version="1.0+">
<rule>
<id />
<action permission="run" />
</rule>
</ruleset>
将其添加到罐子中
jar -cf DeploymentRuleSet.jar ruleset.xml
与我的公司密钥库签名
jarsigner DeploymentRuleSet.jar <alias> -keystore <path-to-keystore> -sigfile filesig -storetype <store-type>
然后将其复制到
%SYSTEMROOT%\Sun\Java\Deployment
根据文档我应该能够在不签名jar的情况下运行,所以为什么会出现此错误?
According to the docs I should be able to run without signing my jars so why am I getting this error?
permission - Action taken. The following values are valid:
run - The following types of RIAs are allowed to run without prompts:
Signed with a valid certificate from a trusted certificate authority
Signed with an expired certificate
Self-signed
Unsigned
Missing required JAR file manifest attributes
有〜250(!),所以我宁愿不要一直在签名,因为这会大大减慢我的构建过程.
There are ~250(!) so I'd rather not be signing them all the time as it slows down my build process considerably.
使用JRE版本1.7.0_71-b14.
Using JRE version 1.7.0_71-b14.
推荐答案
您需要在JAVA>安全>证书>签名者CA下导入证书
You need to import the certificate under JAVA > Security > Certificates > Signer CA
这篇关于部署规则集是否允许JNLP在不签名Jar的情况下运行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!