您好我正在编写一个ASP.Net MVC内部网应用程序,可通过手持设备和一系列浏览器访问。我的用户都拥有AD帐户,并且对我们的SQL数据库视图/过程具有不同的权限,具体取决于他们所在的区域。数据库还使用CURRENT_USER进行水平分区。
由于需要访问应用程序的设备范围,我不能依赖模拟/委派或受信任的子系统。我希望用户在上述机制失败时只输入用户名和密码(与AD相同)。
有没有人知道如何在连接字符串中使用AD用户名和密码来访问数据库而无需创建一组SQL镜像帐户?我无法使用网络服务或sql代理帐户登录,因为数据库需要用户识别。
答案 0 :(得分:6)
您无法在连接字符串中执行此操作。
最好的办法是让您的ASP.NET代码模拟您想要连接的用户。 这对于ASP.NET来说可能有点棘手,因为已经存在模拟层,但它是可行的。
请参阅此MSKB article名为“模拟代码中的特定用户”的部分,以帮助您开始正确的道路。