【问题标题】:NTLM Authentication Failure, 'www-authenticate': 'Negotiate, NTLM'NTLM 身份验证失败,“www-authenticate”:“协商,NTLM”
【发布时间】:2015-01-10 03:06:16
【问题描述】:

我正在编写 Meteor.JS 应用程序,需要通过 NTLM 服务器进行身份验证。我想我大部分时间都在那里;我的工作流程目前如下:

  1. 在“www-authenticate”标头下使用 NTLM 类型 1 消息向服务器发送 GET 请求,
  2. 在“www-authenticate”标头下接收带有 NTLM 类型 2 消息的 (401) 响应(类似于“www-authenticate”:“NTLM TlRMTVN ....”),
  3. 在“www-authenticate”标头下使用 NTLM 类型 3 消息向服务器发送 GET 请求,
  4. 接收带有标题“www-authenticate”的 (401) 响应:“协商,NTLM”。

这就是我感到困惑的地方;在第 4 步,我希望根据我所阅读的所有内容收到 200 OK 状态。但是,我反而在 www-authenticate 标头中收到“协商,NTLM”,我不知道该怎么做。有没有其他人在 NTLM 上遇到过这种情况?我是在正确的轨道上,还是这指示性的东西是完全错误的?

编辑: 在有人问之前,是的,我确实看到了this question,但就我而言,我已经验证了凭据是正确的。我想知道究竟是什么触发了“协商,NTLM”标头。

【问题讨论】:

  • 嗨 @Ruben Martinez 我正在开发一项新服务来进行 NTLM 身份验证 nafiux.com/wasp 如果我可以帮助你,请告诉我
  • 我需要尽快完成这项工作。是否有可用的演示或公共回购?我想看看你是如何在 Windows 上设置流星 ntlm 的。非常感谢!

标签: authentication meteor ntlm


【解决方案1】:

您是否正在与 IIS 服务器通信。当 Kerberos 和 NTLM 都可用并且服务器希望告知客户端这一点时,服务器会将“协商 NTLM”标头发送到客户端。如果您使用的是 IIS 服务器,您可以尝试将 Windows 身份验证类型更改为仅 NTLM。

或者,您可以在 IIS 上启用请求跟踪模块并查看正在传输的请求。日志通常有足够的数据来理解问题。

希望这会有所帮助。

【讨论】:

  • 不幸的是,我无法直接访问有问题的服务器 :( 这是一个糟糕的 API,我不得不处理。但谢谢!
猜你喜欢
  • 1970-01-01
  • 2011-05-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-08-18
  • 2011-05-15
  • 1970-01-01
  • 2013-01-02
相关资源
最近更新 更多