2009-06-30 88 views
12

我有一个将数据存储在本地SQL Server 2008数据库中的Web服务。如果我在我的帐户下运行Web服务,则Web服务可以成功访问数据库。但是,如果我使用DefaultAppPool(IUSR)帐户,则从Web服务访问数据库将失败。如何配置SQL Server以允许通过IIS进行访问

如何在SQL Server上设置安全性以允许通过IIS访问特定数据库?

我得到特定的错误信息是: 用户登录失败“IIS APPPOOL \ DefaultAppPool”提供

+0

什么是您的Web服务中的连接字符串? – Duncan 2009-06-30 16:10:56

+0

它是一个实体框架连接字符串,如下所示: Calanus 2009-06-30 16:18:42

回答

11

。你有两种选择(很明显,也许!):

  • 而不是使用窗口s集成 安全使用SQL身份验证 。
  • 如果您不能或不想要,那么您有 在SQL Server 中创建一个与该Windows帐户相关的新用户。
  • 或者(第三个选项),您可以将Web服务更改为在您熟悉的帐户下运行。
5

我一般运行在域用户帐户的应用程序池,您可以控制特定用户对每个站点的方式在你的服务器上。

如果我不能使用域帐户,我将运行该网站作为“网络服务” - 并且与SQL中对应的用户将是机器帐户(MACHINENAME $ - 将“machinename”替换为。您的IIS服务器的名称“)

如果你打算使用新的IIS7 IIS用户 - 这不是Windows用户 - 你将不得不使用SQL身份验证,而不是Windows身份验证SQL数据库访问

相关问题