IIS 8.5 和 Windows 2012 R2 上的 Mercurial 网络共享
Mercurial on IIS 8.5 and Windows 2012 R2 with network shares
我正在 IIS 8.5 和 Windows Server 2012 R2 上设置 Mercurial 3.6.2。一切都按预期工作,除了我们无法为位于网络驱动器上的存储库提供服务这一事实。网络存储库具有 read/write 权限并为文件系统上的每个人共享。
我们 hgweb.config 的 [paths] 部分看起来像:
[paths]
Repo1 = c:\hg\repo_xxx
Repo2 = d:\hg\repo_xxx
Network_repo = \ServerName\hg\repo_xxx
前两个存储库由 IIS 提供,没有任何问题,另一方面,网络存储库给出了“访问存储库错误”异常。在我们的生产环境中,我们不能将 repos 托管在与网络服务器相同的机器上。
关于如何解决这个问题有什么想法吗?
我找到了解决办法。 IIS 在使用直通身份验证服务于网络存储库时存在安全问题。解决方法是使用在网站级别具有适当权限的特定用户的凭据。 (不是应用程序池级别!)
所以在 IIS 管理器中:
- Select您的网站,点击右侧面板中的基本设置。
- 单击 'Connect as...' 按钮。
- 选择特定用户,点击设置。
- 为用户 (domain\username) 和密码提供足够的权限。
我正在 IIS 8.5 和 Windows Server 2012 R2 上设置 Mercurial 3.6.2。一切都按预期工作,除了我们无法为位于网络驱动器上的存储库提供服务这一事实。网络存储库具有 read/write 权限并为文件系统上的每个人共享。
我们 hgweb.config 的 [paths] 部分看起来像:
[paths]
Repo1 = c:\hg\repo_xxx
Repo2 = d:\hg\repo_xxx
Network_repo = \ServerName\hg\repo_xxx
前两个存储库由 IIS 提供,没有任何问题,另一方面,网络存储库给出了“访问存储库错误”异常。在我们的生产环境中,我们不能将 repos 托管在与网络服务器相同的机器上。
关于如何解决这个问题有什么想法吗?
我找到了解决办法。 IIS 在使用直通身份验证服务于网络存储库时存在安全问题。解决方法是使用在网站级别具有适当权限的特定用户的凭据。 (不是应用程序池级别!)
所以在 IIS 管理器中:
- Select您的网站,点击右侧面板中的基本设置。
- 单击 'Connect as...' 按钮。
- 选择特定用户,点击设置。
- 为用户 (domain\username) 和密码提供足够的权限。