我们在 Windows/MS-SQL 2012 服务器内部(LAN)运行一个供应商提供的应用程序,通过同一台机器上的 IIS 提供访问。该应用程序能够存储附加文档 - 这些文档物理上保存在该服务器的共享中。
我们正在尝试使一个新组件运行 - 基于 DMZ 的 2008R2 / IIS 7.5 服务器,旨在为外部用户提供对相同文档的可下载访问权限。
我们正在努力理清权限问题,以便 DMZ 服务器可以访问内部共享,我想知道我们试图做的事情是否不可行。供应商正在尝试使用 NetworkService 帐户访问文档,但由于 DMZ 服务器不属于任何域,因此我们很难在内部共享上设置适当的权限(我甚至尝试让每个人都拥有对内部共享目录的完全访问权限)。
情况很复杂,因为我们不“管理”网络/防火墙基础设施。
我一直在阅读有关应用程序池帐户和其他做事方式的资料,但这不是我最擅长的领域,我怀疑供应商也有点挣扎。我们的网络/防火墙设置似乎比他们的内部实验室复杂一些,他们提出的一些建议似乎有误导性(例如,当我们指出我们的防火墙可能阻塞端口时,他们谈到了内置的 Windows 防火墙)。我们是该系统的早期采用者,目前版本为 1.0.0.1
如果有助于更好地理解,我们已经从 DMZ 向内部服务器开放了端口 445。这允许 DMZ 服务器尝试获取内部文档(当外部用户单击应用程序中的超链接时),但由于没有权限(我相信)而失败,并出现错误:
拒绝访问路径“\servername\sharename\documentfolder\9f4585db-14b9-4a93-8b4b-bfd12b5f5930.pdf”。
有人能提供帮助/指导吗?我很乐意提供更多信息。
提前谢谢了。
答案1
您可能必须在 IIS DMZ 服务器上运行 caspol.exe,请回答以下问题: 虚拟目录与 UNC 路径的权限问题
另外,为应用程序池使用服务帐户。当然,它在域中必须具有相同的名称和密码,并且与 DMZ 服务器上的本地帐户相同。