这是一个与how to use express-ntlm to get windows user name without authentication using NODE.js?相关的问题
我试图找到一种方法来获取访问者窗口用户名,而无需经过真正的ntlm身份验证,我只想使用express-ntlm从浏览器http响应中提取用户名。
我对这个过程的理解是:
我被困在上面的第四步。我刚刚安装了Fiddler来记录页面加载的通信跟踪。
第一次握手:
GET http://localhost:3000/search HTTP/1.1
Host: localhost:3000
Connection: keep-alive
Cache-Control: max-age=0
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,
like Gecko) Chrome/40.0.2214.115 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4
If-None-Match: "1085683586"
==== response ====
HTTP/1.1 401 Unauthorized
X-Powered-By: Express
WWW-Authenticate: NTLM
Date: Wed, 04 Mar 2015 01:48:10 GMT
Connection: keep-alive
Proxy-Support: Session-Based-Authentication
Content-Length: 0第二次握手:
GET http://localhost:3000/search HTTP/1.1
Host: localhost:3000
Connection: keep-alive
Cache-Control: max-age=0
Authorization: NTLM
TlRMTVNTUAABAAAAB7IIogQABAA0AAAADAAMACgAAAAGAbEdAAAAD1hBUEVOR0xJQU4zMFhMTlg=
Accept:
text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8
User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML,
like Gecko) Chrome/40.0.2214.115 Safari/537.36
Accept-Encoding: gzip, deflate, sdch
Accept-Language: en-US,en;q=0.8,zh-CN;q=0.6,zh;q=0.4
If-None-Match: "1085683586"
=== response ====
HTTP/1.1 401 Unauthorized
X-Powered-By: Express
WWW-Authenticate: NTLM
TlRMTVNTUAACAAAAAAAAAAAoAAABggAAASNFZ4mrze8AAAAAAAAAAA==
Date: Wed, 04 Mar 2015 01:48:10 GMT
Connection: keep-alive
Proxy-Support: Session-Based-Authentication
Content-Length: 0在小提琴的追踪中有什么我需要注意的吗?
我使用的是win7 +铬。(我也尝试过IE和firefox,但没有运气)。
谢谢。
发布于 2015-03-26 15:39:26
使用Fiddler跟踪Ntlm挑战/响应流是件好事。在“检查员”选项卡上,有一个包含大量信息的8月部分。当Ntlm类型3请求由客户端发送时,您将在那里找到用户名。它被编码了,但是Fiddler会为你解码它。
https://stackoverflow.com/questions/28825549
复制相似问题