1

我认为这应该很容易用谷歌找到,但是在彻底搜索并试图理解实际实现但没有完全成功之后,我想这里有人可能有一个想法:Are the implementation specific details on HTTP proxy authentication in Oracle's Java VM (Java 6)记录在某处?

如果没有,也许有人可以对我们遇到的一些问题有所了解:

  • 系统属性 http.proxyUser 和 http.proxyPassword 显然不再支持。那是对的吗?

  • 如果代理提供多个身份验证方案,则使用哪种身份验证方案?好像是第一个。实际上这并不重要,但 NTLM 方案的实现似乎表现不同,因此在我们的案例中了解实际使用哪种方案很重要。

  • 如果 Java 决定使用 NTLM 进行身份验证,则并不总是使用提供的 Authenticator。至少在 Windows 下,使用当前进程所有者的凭据进行身份验证尝试。从实际实现中并不明显,但我在网上发现的其他讨论表明,如果第一次尝试失败,则在第二次尝试中使用来自 Authenticator 的凭据。在我们的例子中,IIS 代理在第一次身份验证尝试时返回“502 bad gateway”错误,因此 Java 实现可能假定问题与身份验证凭据无关,因此在没有进一步身份验证尝试的情况下立即失败。有人可以确认这是正确的吗?

4

0 回答 0