将AD-User从客户端传递到IIS-Server到DB-Server

时间:2014-02-13 08:44:37

标签: asp.net sql-server iis

是否有可能将AD-User从客户端传递到IIS - Server,然后使用此AD-User登录SQL-Server?所以我需要的是这样的:

--client--               ---IIS---              -------SQL-Server-------
|AD-User |  --AD-User--> |WebPage| --AD-User--> |Logged on with AD-User|
----------               ---------              ------------------------

仅当SQL-ServerIIS位于同一服务器上时才有效:

--client--               -------Server-------
|AD-User |  --AD-User--> |IIS withWebPage   |
----------               |SQL-Server with DB|
                         --------------------

但如果IISSQL-Server位于两台不同的计算机上,则无效。

有人知道如何通过两台不同的计算机将AD用户从客户端传递到IISSQL-Server吗?我必须做哪些设置?

1 个答案:

答案 0 :(得分:0)

不幸的是,使用NTLM身份验证无效。问题是您的用户无法在不知道密码的情况下对下一跳进行身份验证。 IIS服务器不知道这一点,因为只有基于密码的哈希用于从客户端到IIS进行身份验证。您可以通过搜索“双跳认证”找到更多信息。

这是一篇描述此问题的文章: http://blogs.msdn.com/b/besidethepoint/archive/2010/05/09/double-hop-authentication-why-ntlm-fails-and-kerberos-works.aspx

前段时间我遇到了同样的问题,并决定使用SQL身份验证的服务帐户进行数据库访问。 Kerberos不是一种选择,因为没有在客户端基础设施上实现。

希望有帮助...