【发布时间】:2011-10-08 08:03:57
【问题描述】:
【问题讨论】:
标签: c# asp.net iis-6 kerberos ntlm
【问题讨论】:
标签: c# asp.net iis-6 kerberos ntlm
Kerberos 和 NTLM 是用于验证用户密码的不同算法,无需向服务器透露密码。有关NTLM 和Kerberos 的更多信息,请访问维基百科。
如果您启用 Windows 身份验证,通常会首选 Kerberos,如果不可用,它将回退到 NTLM。
【讨论】:
这是一个很好的链接:
http://msdn.microsoft.com/en-us/library/aa480475.aspx
这还会显示 kerberos (Negotiate) 是否开启(在您的网络服务器上):
cscript adsutil.vbs get w3svc/nnn/NTAuthenticationProviders
注意:nnnn 是 MetaBase 站点 ID
过去,kerberos 给我带来了一些问题(当用户拥有太多权限时)导致“400 Bad Request”错误
【讨论】:
NTLM(Windows 质询/响应)是在包括运行 Windows 操作系统的系统和独立系统在内的网络上使用的身份验证协议。NTLM 凭据基于交互式登录过程中获得的数据,并由域名组成、用户名和用户密码的单向哈希。
Kerberos 是一种基于票证工作的计算机网络身份验证协议,允许通过非安全网络进行通信的节点以安全的方式相互证明其身份。它基于客户端-服务器模型工作,并提供相互验证——用户和服务器都验证彼此的身份。
请参阅以下链接以获得清晰的信息。
http://msdn.microsoft.com/en-us/library/windows/desktop/aa378749(v=vs.85).aspx
http://technet.microsoft.com/en-us/library/cc780469(v=ws.10).aspx
http://windowsitpro.com/security/comparing-windows-kerberos-and-ntlm-authentication-protocols
【讨论】:
Kerberos 可以被认为是比 NTLM 更好的选择:
1. 更快的身份验证
2. 相互认证
3. Kerberos 是一个开放标准
4.支持认证委托
以下链接是我研究此主题的最佳答案:
Comparing Windows Kerberos and NTLM Authentication Protocols
【讨论】: