将 SQL CE 4 部署到 IIS 7 - 需要特殊权限?

Posted

技术标签:

【中文标题】将 SQL CE 4 部署到 IIS 7 - 需要特殊权限?【英文标题】:Deploying SQL CE 4 to IIS 7 - Special Permissions Needed? 【发布时间】:2010-12-13 21:14:54 【问题描述】:

我有一个使用新的 SQL CE 4 CTP 的 ASP.NET 4 站点。该站点在本地运行良好(Win7 上的 IIS 7.5),在 Server 2003/IIS 6 上运行良好。在 Server 2008 上部署到 IIS 7 时失败。我得到的错误是:

访问被拒绝。 (来自 HRESULT 的异常:0x80070005 (E_ACCESSDENIED))

有趣的是,如果我将应用程序池用户从其默认用户切换到 LocalSystem,一切正常。很明显,某处存在权限问题。

长话短说,有谁知道部署 SQL CE 4 数据库时需要设置哪些特殊权限? (顺便说一句,我们已经在 db 本身和 c:\windows\temp 上设置了 r/w 访问权限)

谢谢!

【问题讨论】:

【参考方案1】:

实际的解决方案是将 IUSR 权限添加到 bin 目录(不知何故缺少)。希望这对将来的其他人有所帮助!

【讨论】:

它帮助了我:) ***.com/questions/4869255/… 谢谢,解决了我的问题【参考方案2】:

对数据库文件所在文件夹的写入权限。您可以使用 Process Explorer 来确定缺少哪些权限。

【讨论】:

【参考方案3】:

我目前正在运行一个 Web 服务器,其中包含 Windows Server 2008 R2 的新副本,并在 GAC 中安装了 SQL CE 4.0。

我遇到了类似的问题,但更多的是:

事件日志中的“底层提供程序在打开时失败”。我会尝试一切,并在 SO 和谷歌上查找所有内容。在这里尝试了这两个建议,终于开始取得一些进展。

除了添加读/写权限(感谢 ErikEJ)之外,这是朝着正确方向迈出的一步,但要向哪个用户授予这些权限是一项艰巨的任务(感谢 Robbo)。不幸的是,这并没有完全帮助我,而且在努力之后 来回使用用户和权限,最终结果是我需要以下两个权限才能工作:

IUSR IIS_IUSRS

都需要应用程序文件夹的读/写权限。

希望这与上面提供的答案一起提供帮助 - 当然帮助了我。

【讨论】:

以上是关于将 SQL CE 4 部署到 IIS 7 - 需要特殊权限?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 localDB 将 ASP.NET MVC 4 应用程序部署到 Windows 7 上的本地 IIS?

从 Win CE 设备到 SQL Server 2008 R2 的 SQL 复制

将站点部署到 IIS 服务器

如何将网站部署到IIS服务器上

如何将表添加到 Windows Phone 上已部署的 SQL Server CE 数据库?

将 asp.net core web api 部署到 IIS 7.5 时出现 500 错误