【发布时间】:2011-02-11 10:19:03
【问题描述】:
我有一个 MVC 应用程序,在连接到 Sql Server 时我应该使用 Windows 凭据。
我不想使用这些凭据运行 AppPool,是否可以通过其他方式执行此操作?还是让应用程序池使用连接到 sql server 所需的凭据运行的首选方式?
编辑
稍微详细一点:
我们正在使用 ASP.NET 模拟/Windows 身份验证来确保 IIS 应用程序的安全性。这使得在连接到数据库时使用正确的 Windows 帐户有点困难。我们是否必须切换到 sql 身份验证或使用围绕数据库处理的自定义模拟(win api)?还有其他方法吗?
【问题讨论】:
-
为什么不使用集成安全?这是一个问题吗?在连接字符串中使用它后,您需要配置 IIS 应用程序以允许使用 Windows 凭据登录。
-
因为 ASP.Net 模拟已开启,并且不是已登录的用户帐户有权访问数据库。
-
如果使用 Windows 凭据连接到 SQL Server,并且如果不使用集成安全性,您打算如何使用 SQL Server 验证用户密码?您是否有权访问用户的 Windows 帐户密码以传递给 SQL Server?
-
SQL Server 中的 Windows 身份验证始终使用当前登录的 Windows 用户的凭据进行身份验证...也许一个问题可能是“为每个 Windows 用户创建一个 SQL Server 用户帐户并使用该用户的使用 SQL Server 身份验证的帐户”之类的东西,但这与您的需要不同
标签: .net sql-server asp.net-mvc