集成Windows身份验证

集成Windows身份验证 (Integrated Windows Authentication,IWA) 包含两种独立的身份验证机制。第一种是NTLM(NT LAN Manager),即Windows NT挑战/响应验证认证(Windows NT Challenge/Response authenticationis),第二种是Kerberos身份验证。

 NTLM使用Windows凭据(而不是未编码的用户名和密码)来转换质询数据。NTLM身份验证需要客户端和服务器之间的多次交换,要求启用HTTP keep-alive功能,否则将无法进行验证,即服务器和所有参与代理都必须支持持久连接,才能成功完成身份验证,因此无法通过大多数代理服务器发挥作用(因为许多代理服务器不允许keep-alive功能)。

NTLM工作流程是这样的:

1.     客户端首先在本地加密当前用户的密码成为密码散列。

2.     客户端向服务器发送自己的帐号,这个帐号是没有经过加密的,明文直接传输。

3.     服务器产生一个16位的随机数字发送给客户端,作为一个challenge(挑战)。

4.     客户端再用加密后的密码散列来加密这个challenge ,然后把这个返回给服务器。作为 response(响应)。

5.     服务器把用户名、给客户端的challenge、客户端返回的response这三个东西,发送域控制器。

6.     域控制器用这个用户名在SAM密码管理库中找到这个用户的密码散列,然后使用这个密码散列来加密challenge。

7.     域控制器比较两次加密的challenge,如果一样,那么认证成功。

        Kerberos身份验证是一种最初由麻省理工学院(MIT)开发的身份验证技术。这种身份验证机制稳定可靠,它利用共享密钥来保护用户凭据,并使用时间戳来防止重播攻击。它得到了所有 Web 服务器以及大多数客户端浏览器的广泛支持。大多数情况下要求使用Microsoft Active Directory,因为Active Directory充当Kerberos令牌授予服务 (TGS\TGT)。由于需要AD,因此在大多数面向Internet的环境中无法运作。最适合在intranet 环境中使用。


你可能感兴趣的:(Server,Frame)