Java Web Start 安全错误
Java Web Start Security errors
我正在将程序从 JApplet 迁移到 Java Web Start,但我遇到了安全问题。
我的程序是用我公司的证书签名的,我还在 Java 控制面板的例外列表中添加了我的站点,但它仍然给我这个错误:
我的 Java 例外站点列表:
我的 JNLP 文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://10.13.3.68:8000/"
href="myapp.jnlp">
<information>
<title>My app</title>
<vendor>My Company</vendor>
<description>My description</description>
</information>
<resources>
<j2se version="1.8+"/>
<jar href="myapp.jar" main="true"/>
<jar href="myappResources.jar"/>
</resources>
<application-desc
main-class="MainForm"
/>
</jnlp>
我用的是java1.8.0_73。 Jar 文件已由 jarsigner
正确签名。您知道如何使用 Web Start 启动应用程序而不会出现此错误吗? HTTP 服务器在我的本地 PC 上。当我尝试使用 JNLP 的小型 "Hello World" 应用程序(它们甚至没有签名!)时,它们成功了。我不知道为什么这个程序会出错。
更改我的 jar 清单文件属性后:
Codebase: *
Caller-Allowable-Codebase: *
并将这些行添加到我的 JNLP 文件中:
<security>
<all-permissions/>
</security>
它开始工作了。
问题可能是我
Permissions: all-permissions
在我的清单文件中,我没有在 JNLP 文件中设置正确的属性。
第二个问题是我忘记更改清单文件中的代码库 - 我在那里有我不再使用的特定 IP。
我正在将程序从 JApplet 迁移到 Java Web Start,但我遇到了安全问题。 我的程序是用我公司的证书签名的,我还在 Java 控制面板的例外列表中添加了我的站点,但它仍然给我这个错误:
我的 Java 例外站点列表:
我的 JNLP 文件如下所示:
<?xml version="1.0" encoding="utf-8"?>
<jnlp spec="1.0+" codebase="http://10.13.3.68:8000/"
href="myapp.jnlp">
<information>
<title>My app</title>
<vendor>My Company</vendor>
<description>My description</description>
</information>
<resources>
<j2se version="1.8+"/>
<jar href="myapp.jar" main="true"/>
<jar href="myappResources.jar"/>
</resources>
<application-desc
main-class="MainForm"
/>
</jnlp>
我用的是java1.8.0_73。 Jar 文件已由 jarsigner
正确签名。您知道如何使用 Web Start 启动应用程序而不会出现此错误吗? HTTP 服务器在我的本地 PC 上。当我尝试使用 JNLP 的小型 "Hello World" 应用程序(它们甚至没有签名!)时,它们成功了。我不知道为什么这个程序会出错。
更改我的 jar 清单文件属性后:
Codebase: *
Caller-Allowable-Codebase: *
并将这些行添加到我的 JNLP 文件中:
<security>
<all-permissions/>
</security>
它开始工作了。
问题可能是我
Permissions: all-permissions
在我的清单文件中,我没有在 JNLP 文件中设置正确的属性。
第二个问题是我忘记更改清单文件中的代码库 - 我在那里有我不再使用的特定 IP。