New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
proposal: net/http: Proxy: Support authentication that takes multiple rounds #22288
Comments
CC @tombergan |
Can you explain why you cannot use a custom dialer as Brad suggested here? |
I can use a custom dialer as Brad suggested: |
In that case I'd prefer to close this request. NTLM is a specific and narrow use case. It does not seem worth adding API for this one use case. If it turns out there many other protocols that use multi-round authentication, we can reconsider. |
…variable Go does not support NTLM proxy authentication by default. An attempt golang/go#22288 to add NTLM proxy authentication to Go's code base has not been accepted. But there is a workaround/hack overwriting http.Transport.DialContext to do NTLM proxy authentication. Experimental: Returns NTLM proxy authentication handler if NTLM_PROXY is set. The environment variable NTLM_PROXY contains the proxy to be used. Works on Windows only.
…variable Go does not support NTLM proxy authentication by default. An attempt golang/go#22288 to add NTLM proxy authentication to Go's code base has not been accepted. But there is a workaround/hack overwriting http.Transport.DialContext to do NTLM proxy authentication. Experimental: Returns NTLM proxy authentication handler if NTLM_PROXY is set. The environment variable NTLM_PROXY contains the proxy to be used. Works on Windows only.
…variable Go does not support NTLM proxy authentication by default. An attempt golang/go#22288 to add NTLM proxy authentication to Go's code base has not been accepted. But there is a workaround/hack overwriting http.Transport.DialContext to do NTLM proxy authentication.
…variable Go does not support NTLM proxy authentication by default. An attempt golang/go#22288 to add NTLM proxy authentication to Go's code base has not been accepted. But there is a workaround/hack overwriting http.Transport.DialContext to do NTLM proxy authentication.
…variable Go does not support NTLM proxy authentication by default. An attempt golang/go#22288 to add NTLM proxy authentication to Go's code base has not been accepted. But there is a workaround/hack overwriting http.Transport.DialContext to do NTLM proxy authentication.
The Go http client lacks support for proxy authentication that takes multiple rounds, see for example #20053 . This prohibits support for a wider range of proxy authentications, for example NTLM proxy authentication.
Current issues trying to use NTLM proxy authentication:
I suggest to make the proxy connection setup customisable.
One could extend the
Transport
to specify a setup function to configure the proxy connection:A context (in this example
ProxySetupContext
) needs to provide all necessary information to setup a proxy connection, that is:http
vs.https
net.Conn
)A default proxy setup function would be provided. The default proxy setup function would handle the HTTPS+CONNECT case.
An attempt :
The text was updated successfully, but these errors were encountered: