Closed ubuntolog closed 3 months ago
@ubuntolog Thanks for this update. Leave this issue open until we have a solution.
@ubuntolog Do you have some reference or suggested web search for the "changes in security policy" referenced above? Thanks.
I have looked into the problem more closely. It seems that Oracle has disabled basic HTTP authentication by default since Java 8: https://www.oracle.com/java/technologies/javase/8u111-relnotes.html
The issue with the proxy originates from the Java that comes with IGV 2.17.0 by default. It is using Oracle's default settings (jdk.http.auth.tunneling.disabledSchemes=Basic). Somehow our previous Java distributions used with IGV were configured to have basic HTTP authentication enabled (possibly one of the former colleagues did that, at least I have never changed the configs manually).
Strictly speaking, the issue is not new and is not really a bug. However, people who are using IGV with a proxy server that requires a basic HTTP authentication need to know how to configure Java correctly. IGV does not report the problem explicitly enough (only if one looks at the log file, it is possible to get some idea about what is going on)
OK, thanks for the details. I will see if we can catch this and give a better error message. Leave it open as a reminder to do that.
@helgathorv We should add a note about this in our documentation, something like this
To enable basic authentication with proxy servers you must edit the net.properties file of your java distribution and comment out the following line
jdk.http.auth.tunneling.disabledSchemes=Basic
I have noticed an issue with the 2.17.0 release. When using a proxy server, IGV ignores proxy credentials (login window is not displayed, credentials from the config file are ignored) and prints out 'Proxy authentication required' exception in the log file. A brief research indicates that it has something to do with the changes in the security policy of the new Java. I came up with a solution that looks like a small change in net.properties of my Java distribution: jdk.http.auth.proxying.disabledSchemes has to be unset (empty)
In my net.properties I simply commented out the corresponding line:
jdk.http.auth.proxying.disabledSchemes=
jdk.http.auth.tunneling.disabledSchemes=Basic
I just wanted to let you know, since other people may also have similar issues.