全部:
--更新--
客户端计算机和运行 protected 资源的计算机位于同一域中,登录用户可以使用其用户名/密码访问该资源。
当使用httpclient访问内网中 protected Web资源时,我们可以向NTCredentials提供Windows用户/密码和域名。 但是有没有办法获取 native 当前登录用户的默认 Windows 用户/密码和域名。 因此不需要向用户询问用户的NTCredentials,我们可以使用用户登录的NTCredentials来访问 protected 资源。
URLConnection 可以成功访问资源:当 URLConnection 收到第一个请求的未授权错误 401 时,并且检测到远程服务器支持 nltm,URLConnection 将创建一个 token 并添加 http header ,例如:Authorization: NTLM TlRMTVNTUAABAAAAB7IIogwA。 那么请求就会成功。
我想知道我们是否可以使用 httpclient 来做到这一点? httpclient 可以使用登录用户信息自动添加授权 token 吗?
非常感谢您的回复和帮助。
最佳答案
Oracle 的 HttpURLConnection 实现通过 JNI 使用 native 、Windows 操作系统特定功能来访问当前用户安全上下文。人们也可以对 HttpClient 使用相同的技术,但这会使其依赖于 Oracle 的 JRE 实现和 Windows 安全 API。
关于java - httpclient 可以使用当前登录用户自动创建授权 header 作为 java URLConnection 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15792166/