【问题标题】:iis7 delegate windows authentication user to the application pool to access sql backendiis7将windows身份验证用户委托给应用程序池访问sql后端
【发布时间】:2011-06-20 10:27:53
【问题描述】:

我们的组织处理安全性的方式都是基于 SQL Server。基本上用户被添加到 Active Directory 组中,然后这些组与数据库相关联。

所以我有一个基于 Intranet 的 Silverlight RIA 应用程序。它的配置设置为使用 Windows 身份验证和模拟。 它所在的 Web 服务器设置为使用模拟和 Windows 身份验证。

当此应用程序访问 SQL Server 后端时,我如何将经过身份验证的用户详细信息传递到应用程序池。 那么应用程序在他们的凭据下查询数据库? 或者我如何通过 IIS 7 使用他们的凭据查询数据库。

谢谢

【问题讨论】:

    标签: sql-server authentication iis-7 impersonation


    【解决方案1】:

    这是一个经典的双跳问题,NTLM 只能将凭据从客户端 (silverlight) 传递到单个服务器 (Web 层)。此时,服务器只有一个令牌,而不是用户/通行证对,因此它无法创建下一个令牌以传递给第二个服务器(本例中为 SQL)。有了这个,你不能直接实现你想要的。

    您不能“让应用程序池获取 ID”;但如果我没记错的话,Keberos 和 AD 授权委托可以解决这种使用客户端凭据通过 Web 层访问 SQL 的场景。

    看看这个线程: Solution to avoid double-hop from client > web service > SQL Server

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-05-07
      • 2019-02-04
      • 1970-01-01
      • 2012-09-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多