Asp.net 将mdf文件附加到sql server中

Asp.net 将mdf文件附加到sql server中,asp.net,sql,sql-server,exception,Asp.net,Sql,Sql Server,Exception,早期的mdf文件在app_数据文件夹中,应用程序运行正常。 当我将mdf文件附加到sql server时。我可以执行查询。但当我试图从asp.net应用程序中使用它时,它给出了以下异常 无法打开用户默认数据库。登录失败。 用户“域\用户名”登录失败。该错误表示您正在尝试使用集成安全性。根据您的IIS版本和配置,您可能正在尝试使用IUSR或网络服务帐户连接到数据库 最简单的修复方法是使用SQL身份验证。在连接字符串中包含SQL帐户用户名/密码。因此,如果我理解正确,您不再指定,而是将数据库“for

早期的mdf文件在app_数据文件夹中,应用程序运行正常。 当我将mdf文件附加到sql server时。我可以执行查询。但当我试图从asp.net应用程序中使用它时,它给出了以下异常

无法打开用户默认数据库。登录失败。
用户“域\用户名”登录失败。

该错误表示您正在尝试使用集成安全性。根据您的IIS版本和配置,您可能正在尝试使用IUSR或网络服务帐户连接到数据库


最简单的修复方法是使用SQL身份验证。在连接字符串中包含SQL帐户用户名/密码。

因此,如果我理解正确,您不再指定,而是将数据库“for real”附加到现有SQL Server实例

由于您不再连接到自己的个人实例,因此应用程序必须具有适当的凭据才能连接到连接数据库的SQL Server实例。正确的解决方案取决于许多因素,但可能的答案是:

  • 为ASP应用程序池标识创建SQL Server登录,并授予此登录正确访问所需数据库的权限。从WINDOWS中使用创建登录名[domain\user]并创建用户[domain\user]。更好的是,为了获得额外的积分,将应用程序池标识添加到安全组中,并授予该安全组所需的权限
  • 将应用程序池标识更改为具有已授予的适当权限的独立性
  • 如果ASP应用程序使用模拟,并且SQL Server实例与ASP应用程序位于不同的计算机上,请确保允许您的ASP应用程序池进行模拟

我想使用集成安全性。