asp.net - 使用连接字符串中的 AD 用户名和密码对 SQL 进行 Windows 身份验证

标签 asp.net sql asp.net-mvc windows-authentication

您好,我正在编写一个 ASP.Net MVC Intranet 应用程序,可以通过手持设备和一系列浏览器访问该应用程序。我的用户都有 AD 帐户,并且根据他们所在的区域对我们的 SQL 数据库 View /过程拥有不同的权限。数据库还使用 CURRENT_USER 进行水平分区。

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

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

最佳答案

您不能在连接字符串中执行此操作。

最好的办法是让 ASP.NET 代码模拟您想要连接的用户。 对于 ASP.NET,这可能有点棘手,因为已经存在模拟层,但这是可行的。

请参阅此 MSKB article 的部分名为“在代码中模拟特定用户”,让您开始走上正确的道路。

关于asp.net - 使用连接字符串中的 AD 用户名和密码对 SQL 进行 Windows 身份验证,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3358938/

相关文章:

asp.net - 使用 ASP.NET,如何创建 iPhone/Android 特定的移动网站?

asp.net - 增加计数器但随着延迟减少

javascript - d3.js scaleTime 返回未定义

asp.net-mvc - ASP.NET MVC 是否需要 IIS?

c# - LINQ-NHibernate - 只为复杂对象选择几个字段(包括集合)

c# - ASPX 如何通过 Windows 授权连接到另一个 IP 中的 SQL 2008?

sql - 在 SQL Server 2012 中,如何从 View 、函数或存储过程中获取列名和数据类型?

sql - 根据 SQL 条件分配季度数和年份数

mysql - 加入从多个行值中选择?

c# - ASP.NET MVC 中的 Toast 通知