Java Web Start:自 Java 8 Update 111 以来无法通过代理建立隧道 [英] Java Web Start: Unable to tunnel through proxy since Java 8 Update 111
问题描述
自 Java 8 Update 111 以来,我们的一些客户无法再运行我们的 Java Web Start 客户端.他们得到:
Some of our customers cannot run our Java Web Start client anymore since Java 8 Update 111. They get:
java.io.IOException:无法通过代理建立隧道.代理退货需要 HTTP/1.1 407 代理身份验证
java.io.IOException: Unable to tunnel through proxy. Proxy returns "HTTP/1.1 407 Proxy Authentication Required
看起来与此更改有关一个>:
现在,代理在设置隧道时需要基本身份验证默认情况下,HTTPS 将不再成功.如果需要,这可以通过从jdk.http.auth.tunneling.disabledSchemes 网络属性,或通过将同名的系统属性设置为"(空)命令行.
Now, proxies requiring Basic authentication when setting up a tunnel for HTTPS will no longer succeed by default. If required, this authentication scheme can be reactivated by removing Basic from the jdk.http.auth.tunneling.disabledSchemes networking property, or by setting a system property of the same name to "" ( empty ) on the command line.
如果客户不愿意改变他们的代理身份验证方法,有什么办法吗?
Is there any way if customers are not willing to change their proxy authentication method?
注意: 将
添加到
的 JNLP 无效.这是因为这种方式只支持少数属性(此页面).jdk.http.auth.tunneling.disabledSchemes"不在其中.
Note: Adding <property name="jdk.http.auth.tunneling.disabledSchemes" value=""/>
to <resources>
of the JNLP has no effect. This is because only a few properties are supported this way (there is a list near the bottom of this page). "jdk.http.auth.tunneling.disabledSchemes" is not among them.
推荐答案
我发现有一种方法,但不在开发者手中:用户可以添加
I found out that there is one way, but not in the hands of the developer: The user can add
-Djdk.http.auth.tunneling.disabledSchemes=""
Java 控制面板中的 Java 8 → Java → 查看... → 运行时参数
for Java 8 in Java Control Panel → Java → View... → Runtime Parameters
Java 9 中的 Java 控制面板 → 桌面设置 → 运行时参数
for Java 9 in Java Control Panel → Desktop Settings → Runtime Parameters
这篇关于Java Web Start:自 Java 8 Update 111 以来无法通过代理建立隧道的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!