Node.js NTLM如何为webservice进行用户身份验证?

Node.js NTLM如何为webservice进行用户身份验证?,node.js,rest,http,express,ntlm,Node.js,Rest,Http,Express,Ntlm,为了更好地理解ntlm,我浏览了一些网站。 我开始创建一个演示,使用ntlm对nodejs应用程序中的用户进行身份验证。在这个演示中,我使用expressjs和expressntlm模块创建了应用程序。 但我仍然不明白,ntlm是如何与nodejs Web服务一起工作的 我对ntlm身份验证有一些疑问 ntlm如何为Web服务工作 如何在使用ntlm时自定义登录页面?目前我正在获取登录凭据的输入框 我可以使用哪些用户进行身份验证?当前应用程序接受任何用户名和密码。所以我不清楚它将使用哪个用户名

为了更好地理解ntlm,我浏览了一些网站。 我开始创建一个演示,使用ntlm对nodejs应用程序中的用户进行身份验证。在这个演示中,我使用expressjsexpressntlm模块创建了应用程序。 但我仍然不明白,ntlm是如何与nodejs Web服务一起工作的

我对ntlm身份验证有一些疑问

  • ntlm如何为Web服务工作
  • 如何在使用ntlm时自定义登录页面?目前我正在获取登录凭据的输入框
  • 我可以使用哪些用户进行身份验证?当前应用程序接受任何用户名和密码。所以我不清楚它将使用哪个用户名和密码
这是我的密码

var app, express, ntlm;

express = require('express');

ntlm = require('express-ntlm');

app = express();

app.all('/', ntlm());

app.get('/', function(request, response) {
  response.send(request.ntlm);
});

app.listen(3000);

有一种Passport.js身份验证策略支持NTLM身份验证,并有一种允许自定义登录屏幕的方法。如何配置它将取决于您使用的服务器类型,但是他们在示例中很好地解释了这些概念

查看“非集成身份验证”部分


我想你在找。阅读josh3736的答案,他用NTLM解释了流程


同样正如Brian Shamblen所建议的,您不需要真正了解所有这些内容,passport.js可以有效地为您处理所有这些。这是一个教程

谢谢,这有助于我开发应用程序,但仍然会出现一个问题,即NTLM如何为web服务工作?请澄清,当您问“NTLM如何为web服务工作”时,您的意思是“如何使用NTLM对RESTful API调用进行身份验证”?是的,我知道NTLM如何工作,但对于web服务身份验证,身份验证的过程或流程是什么,ntlm身份验证与普通身份验证有什么不同?现在已更新,并将其请求代理到Active Directory。所以不可能使用任何东西作为用户名和密码。