请问有人可以提供一种简单、直接的方法来启用 ASP.NET > Kerberos > Sql Server 吗?
我们有客户端机器>网络服务器>数据库服务器。客户端坚持要求站点必须拉取 Windows 登录名而不是提示,因此需要 Kerberos 和集成身份验证。它还必须将用户模拟到数据库服务器,从而引发双跳。
我们的域是 Windows 2003 域,据我在网上所知,这意味着 Kerberos 已启用。在加入域的计算机上,登录后,kerbtray 会显示我有大量票证,因此它显然正在工作。
AD 中的 Web 和数据库服务器计算机帐户都是“受信任的委派”。
必须访问系统的 AD 用户帐户都是“受信任的委派”。
当一切正常后,我将添加更多用户,目前是两个。
Sql Server 实例在数据库服务器上的 LocalSystem 下运行,据我在线所知,这意味着它根本不需要弄乱那些 SPN 的东西。
然而,当我尝试使用任一用户登录时,我得到
Login failed for user 'NT AUTHORITY\ANONYMOUS LOGON'.
表明双跳失败。事实上,在数据库服务器上的应用程序日志中,有大量来自“MSSQL”的条目表示同样的事情,这一事实进一步推动了这一点。
我真的不敢相信这有多难...我的意思是,IIS、SQL 和 Windows 都是微软的,他们就不能说得更好吗???
所以总而言之,我有
- Kerberos 域,
- 数据库和 Web 服务器均受信任进行委派
- 受委托的用户
- AD组中的用户
- AD 组作为 sql 中的登录名(以及 db 中的用户)
- IIS,匿名关闭、集成打开、基本和摘要关闭
- 启用集成的 IE
下载Kerberos 委派故障排除。它是一个救星。
在第 17 页,您会发现活动目录清单。一步步按照检查表进行操作。
在第 30 页,您会发现客户申请清单。逐步验证清单。
第 35 页是中间层清单。一步步验证一下。
第 48 页是后端清单。一步步验证一下。
如果您仍然遇到问题,该文档包含故障排除工具的详细列表(kerbtray、klist、ldifde 等)、如何在系统事件日志中启用日志记录和审核身份验证错误的详细说明、对所有错误代码的详细说明来自身份验证审核的事件日志条目等等。
一旦你弄清楚what错了,修复起来会容易得多。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)