接上篇 : NTLM 基础学习
这次探讨一下NTLM验证中较少出现的性能问题. 在国外大型企业以及微软官方可以见到类似的文章和分享, 国内中文内容和分享比较少. 我们做个尝试, 抛砖引玉;
NTLM和Kerberos是当前 Windows 体系主要的两种认证协议. Linux/Mac 等也很早开始支持这两种协议. 加上当前移动设备迅猛增加, 移动端的应用普遍的采用了兼容性较好的NTLM协议, 比如iPhone/Android基于ActiveSync的邮件应用, 比如系统自带的基于802.1x的有线/无线Radius认证<mschapv2默认使用NTLM>. 以上这些, 造就了NTLM在企业内外大量使用, 带来便利的同时,也带来了大量的安全隐患和稳定性隐患<性能瓶颈>.
安全性隐患在上篇已经有所涉及, 我们不再展开. 稳定性隐患<性能瓶颈>较少遇到, 那么什么时候会发生NTLM的性能瓶颈? 很多朋友也会问,NTLM不就是个认证, 性能瓶颈从哪里来的? 要回答这两个问题, 我们重新回忆一下NTLM的过程和相关知识点:
1首先是NTLM身份验证基本过程
NTLM验证是一种Challenge/Response 验证机制,由三种消息组成:通常称为type 1(协商),类型type 2(质询)和type 3(身份验证)。
它基本上是这样工作的:
- 用户登录客户端电脑
- (type