Unable to tunnel through proxy. Proxy returns “HTTP/1.1 407” via https

前端 未结 3 1223
醉酒成梦
醉酒成梦 2020-12-03 03:00

I am faced with a curious behaviour of java6/8. I try to tunnel through a proxy which needs basic user authentication. Doing this by the standard java Authenticator. If I tr

相关标签:
3条回答
  • 2020-12-03 03:44

    You have to edit the variables jdk.http.auth.tunneling.disabledSchemes and jdk.http.auth.proxying.disabledSchemes to blank like this:

    jdk.http.auth.tunneling.disabledSchemes=
    jdk.http.auth.proxying.disabledSchemes=
    

    In my case I found in this file

    jdk1.8.0_111/jre/lib/net.properties

    0 讨论(0)
  • 2020-12-03 03:54

    This may be helpful:

    System.setProperty("jdk.http.auth.tunneling.disabledSchemes", "false");
    System.setProperty("jdk.http.auth.proxying.disabledSchemes", "false");
    
    0 讨论(0)
  • 2020-12-03 03:56

    Change in Java 8 Update 111:

    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.

    http://www.oracle.com/technetwork/java/javase/8u111-relnotes-3124969.html

    Your options:

    • solve the issue (for the sake of security) by upgrading the authentication scheme of your proxy, e.g. to Digest access authentication
    • or just workaround the issue by running Java with

      java -Djdk.http.auth.tunneling.disabledSchemes=""
      
    0 讨论(0)
提交回复
热议问题