使用 GetHttpConnection 进行 NTLM 身份验证
我有一个 VC++ (6.0) 应用程序。 我们想要使用 NTLM 身份验证来访问服务器。 我提示输入 URL、ID 和密码,并在 internetSession.GetHttpConnection 调用中发送这些内容,如果您输入域\id 和密码,则使用 NTLM 可以正常工作。
我们希望当前登录到与服务器相同的域的用户不必输入其 ID 和密码。 我们如何做到这一点? 我认为这与“直通身份验证”或 WindowsIdentity 有关。 一直在谷歌搜索,但如果有人有一个快速的答案,我肯定会很感激。
I have a VC++ (6.0) app. We want to use NTLM Authentication to access a server. I prompt for the URL, ID, and Password and send these in my internetSession.GetHttpConnection call, and if you enter the domain\id and the password, it works fine, using NTLM.
We want users who are currently logged in on the same domain as the server to not have to enter their ID and password. How do we do this? I think it has to do with "passthrough authentication" or WindowsIdentity. Been Googling for it, but if anyone has a quick answer, I'd sure appreciate it.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
可以使用 WinHTTP 代替 WinInet 吗? 看一下这个包装 WinHTTP 的库。 我认为它使用 WinHttpGetIEProxyConfigForCurrentUser() 来为您获取此信息。 我通过配置为使用 NTLM 的 Microsoft ISA 代理发出请求,没有任何问题,因此我假设它会针对另一台使用 NTLM 的服务器识别出您。
Can you use WinHTTP instead of WinInet? Take a look at this library which wraps WinHTTP. I think it uses WinHttpGetIEProxyConfigForCurrentUser() to get this info for you. I made requests through a Microsoft ISA proxy configured to use NTLM without any issues, so I'd assume it would identify as you against another server with NTLM.