使用AD用户名和密码在连接字符串中对SQL进行Windows身份验证

Luk*_*hde 3 sql asp.net asp.net-mvc windows-authentication

嗨,我正在编写一个ASP.Net MVC内部网应用程序,可通过手持设备和一系列浏览器访问.我的用户都拥有AD帐户,并且对我们的SQL数据库视图/过程具有不同的权限,具体取决于他们所在的区域.数据库还使用CURRENT_USER进行水平分区.

由于需要访问应用程序的设备范围,我不能依赖模拟/委派或可信子系统.我希望用户在上述机制失败时只输入用户名和密码(与AD相同).

有没有人知道如何在连接字符串中使用AD用户名和密码来访问数据库而无需创建一组SQL镜像帐户?我无法使用网络服务或sql代理帐户登录,因为数据库需要是用户感知的.

Joh*_*nFx 6

您无法在连接字符串中执行此操作.

最好的办法是让你的ASP.NET代码模拟你想要连接的用户.这对于ASP.NET来说可能有点棘手,因为已经有一个模拟层正在进行,但它是可行的.

请参阅本的部分MSKB文章"模拟在代码中的特定用户",让你开始正确的道路.