我有一个将数据存储在本地SQL Server 2008数据库中的Web服务。如果我在我的帐户下运行Web服务,则Web服务可以成功访问数据库。但是,如果我使用DefaultAppPool(IUSR)帐户,则从Web服务访问数据库失败。
如何在SQL Server上设置安全性以允许通过IIS访问特定数据库?
我得到的具体错误信息是: 用户'IIS APPPOOL \ DefaultAppPool'
登录失败答案 0 :(得分:11)
你有两个选择(显然可能!):
答案 1 :(得分:5)
我通常在域用户帐户下运行应用程序池,这样就可以控制服务器上每个站点的特定用户。
如果我不能使用域帐户,我会将该网站作为“网络服务”运行 - 并且与SQL中的对应的用户将是机器帐户(MACHINENAME $ - 将“machinename”替换为您的IIS服务器名称“)。
如果您打算使用新的IIS7 IIS用户(不是Windows用户),则必须使用SQL身份验证而不是Windows身份验证来进行SQL数据库访问。