我使用NodeSSPI在TypeScript中进行了单点登录的概念验证。这有效,我得到了我在公司AD域登录的用户名 - 没有输入任何帐户信息或凭据。但我想知道这是如何可行的,因为它适用于IE和Chrome开箱即用。我发现这个MSDN article about NTLM说:
我对第1步和第2步感到特别奇怪:这会发生在哪里?怎么样,例如用户名转移到服务器?它是http请求的一部分吗?我查看了Chrome开发人员工具的请求,看不到任何标题或其他信息,表明例如我的AD用户名被发送到服务器。
请注意:这些问题仅适用于SSO,其中无凭据由用户提供!当用户输入他的凭证时,这是明确的。
答案 0 :(得分:0)
它是http请求的一部分吗?
是。如RFC 4559中所述,您应该从服务器的响应中看到WWW-Authenticate:Negotiate标头,结果是来自客户端的Authorization标头。
如果开发人员工具没有显示此信息,请返回网络捕获。