首页 > 解决方案 > 如何使用 express ntlm 实现用户名/密码验证?

问题描述

我正在尝试使用 Express-ntlm 实现用户名和密码身份验证。我已将以下代码添加为中间件

app.use( ntlm({
domain: '<domainname>',
domaincontroller: '<ldap url>',
}));

我没有在请求中提供任何用户名密码,它会自动在请求中添加 ntlm 标头以及我的登录用户详细信息。我{Authenticated:true}与我的用户名和系统名称相处融洽request.ntlm。如何在此提供不同的用户名/密码并进行身份验证?如果我从 linux/mac 系统登录,这也可以吗?

标签: javascriptnode.jsexpressexpress-ntlm

解决方案


如果您使用支持的浏览器(例如 IE),NTLM 将使用 Windows 中的当前会话自动登录用户。express-ntlm将只接收此信息并将其公开给应用程序。

如果您想使用其他凭据,则必须在 Windows 中使用其他用户登录,或者使用浏览器,如果收到 NTLM 质询,则会提示您输入用户名和密码。如果我没记错的话,Chrome 会这样做。

我从未使用 macOS/Linux 尝试过,但我确信大多数浏览器只会为您提供用户名/密码提示。


推荐阅读