使用node.js进行NTLM身份验证

12

我需要使用node.js与使用NTLM代理身份验证的服务器进行通信。

我已经使用了两个模块:

  1. node-curl https://github.com/jiangmiao/node-curl
  2. request,被高度推荐 htps://github.com/mikeal/request

我没有找到用于request模块的NTLM文档,虽然node-curl支持curl easy选项,但我没有找到有关如何指定CURLAUTH_NTLM用于CURLOPT_HTTPAUTH的文档。

我想知道如何处理NTLM代理身份验证。我希望继续使用request模块。


1
请参阅此问题. 我认为request或任何node模块都不支持NTLM,所以您最好的选择似乎是spawn一个curl --proxy-ntlm进程. - Linus Thiel
5个回答

9

3

2

你是否需要在node.js代码中直接使用NTLM很重要吗?

相反,你可以尝试安装一些中间的NTLM代理,这将给你一个在node.js中使用简单HTTP代理的机会。 至少有两种解决方案:

  1. Cntlm - 用C编写
  2. Ntlmaps - 用Python编写

-1

这里是在Node.js中部分实现NTLM服务器端的代码。它可能有助于开发客户端请求:https://gist.github.com/3049352

这里有一些代码,似乎可以生成类型1消息并接收类型2响应。类型3消息尚未实现,这是最后一步:github.com/kevinswiber/node-ntlm-client

这里有一些关于NTLM协议的文档,应该可以帮助完成它:http://www.innovation.ch/personal/ronald/ntlm.html

这只是一个开始。


这真的不是 NTLM 服务器端的示例。正如要点所提到的那样,它完全是假的。 - Edward Thomson

-1

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接