【问题标题】:About SQL Server security关于 SQL Server 安全性
【发布时间】:2010-05-17 12:22:06
【问题描述】:

我有一个 ASP.NET 应用程序,它在 IIS 中的 Classic .NET AppPool 下运行。

我有一份报告要从我的网站呈现。

问题是 SQL Server 一直告诉我它无法创建与数据源的连接,因为用户 IUSR 登录失败。

将该用户直接添加到数据库后,我可以让报告工作,但我担心安全性。

通过这样做,我是否将我指定的数据库打开到托管在 IIS 上的所有网站?还是该帐户身份特定?

【问题讨论】:

    标签: c# .net asp.net reporting-services reportingservices-2005


    【解决方案1】:

    更好的方法是将应用程序池标识更改为特定用户并将该用户添加到数据库中,否则您将授予标准 IIS 匿名用户访问数据库的权限。

    【讨论】:

    • 除上述之外,您还可以使用 web.config 来模拟不同的用户帐户,或者让应用程序使用 SQL 服务器登录而不是应用程序池中的凭据。
    • 使用 sql server 登录的缺点是您必须将密码存储在 web.config 中。您可以加密连接字符串,但维护和管理比使用 Windows 集成安全更复杂。
    【解决方案2】:

    您正在使用Windows Authentication。您可以使用Sql Server authentication,这样您就可以独立于客户端应用程序的当前用户。您应该使用应用程序的必要凭据创建一个 sql server 用户,并在连接字符串上像这样使用它。

    Data Source=SERVER;Initial Catalog=DATABASE;Persist Security Info=True;User ID=USER;Password=PASSWORD

    【讨论】:

      猜你喜欢
      • 2012-05-31
      • 1970-01-01
      • 1970-01-01
      • 2013-03-04
      • 1970-01-01
      • 1970-01-01
      • 2018-08-31
      • 1970-01-01
      • 2014-05-25
      相关资源
      最近更新 更多