【问题标题】:File Write Access Denied from ISAPIISAPI 拒绝文件写入访问
【发布时间】:2015-04-16 00:57:47
【问题描述】:

我正在使用 Delphi/Intraweb 构建一个 ISAPI 文件。我在我的本地机器上使用 Win7 和 Server2012 作为目标部署。我在“cgi-bin”文件夹下创建了一个“Temp”文件夹。我正在尝试将文件输出到“Temp”文件夹。

如果在“临时”文件夹上向“所有人”授予“写入”权限,我的文件写入工作正常。所以我知道这是一个权限问题。但由于某种原因,授予“IIS_IUSRS”“写入”权限不起作用。

如何找出 IIS 使用哪个用户来执行 cgi,以及如何将其更改为 IIS_IUSRS,如我所料。

w3wp.exe 在“DefaultAppPool”下运行。授予对“DefaultAppPool”的写入权限仍然没有授予我对 Temp 文件夹的写入权限。

【问题讨论】:

    标签: delphi iis file-permissions uac


    【解决方案1】:

    如果我没记错的话,Windows 7 和 Windows Server 2012 上的 IIS 版本在应用程序池中运行 Web 应用程序,您可以使用 IIS 管理控制台检查/修改 w3wp.exe 进程运行的用户在应用程序池设置下。

    【讨论】:

    • w3wp.exe 在“DefaultAppPool”下运行。授予对“DefaultAppPool”的写入权限仍然没有授予我对 Temp 文件夹的写入权限。
    • ??那并非我的本意。查看应用程序池设置中定义的身份。如果我在这里检查服务器,它是ApplicationPoolIdentity,这意味着用户DefaultAppPool 无法访问临时文件夹。 iis.net/learn/manage/configuring-security/…
    • 感谢您帮助我的声誉上升到 10000!
    【解决方案2】:

    您需要为 IIS AppPool\"YourAppPoolName" 配置权限。您可以在应用程序池的基本配置的 name 属性中找到 YourAppPoolName 值。

    另外,我不知道这是否正常,但在我的服务器配置中,使用用户 IUSR 启用了匿名登录。我还必须为 IUSR 添加访问该文件夹的权限。您可以在身份验证图标中查看匿名登录用户帐户。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-11-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-08-19
      • 2014-02-28
      相关资源
      最近更新 更多