【问题标题】:IIS AppPool identity denied access to move fileIIS AppPool 身份拒绝访问移动文件
【发布时间】:2019-10-22 11:12:38
【问题描述】:

我在测试服务器上有这个确切的(我能看到的最好的)场景,它按预期工作。

IIS 应用程序需要将 D 盘上的文件从一个子文件夹移动到另一个子文件夹

D:\supportfiles\new(文件在这里)
D:\supportfiles\backup(文件需要移到这里)

我授予应用程序池 modify 对顶级文件夹 D:\supportfiles 的访问权限 这可以在我的测试服务器上按预期工作,但不能在我发布到的其他服务器上工作。应用程序池有权限,或者至少看起来有权限。

我收到此错误

System.UnauthorizedAccessException:对路径的访问被拒绝。

File.Move(OldPath + FileName, NewPath + FileName);

【问题讨论】:

  • 您确定您授予了对正确池身份的访问权限吗?还要确保子文件夹从顶层继承权限? docs.microsoft.com/en-us/iis/manage/configuring-security/…
  • 发生异常时OldPathNewPathFileName准确值是多少? 精确 值 - 检查 WatchImmediate 窗口。 请从那里复制粘贴,不要输入。

标签: c# .net path iis-7 access-denied


【解决方案1】:

转到您的应用程序应用程序池的高级设置并将其设置为 LocalSystem 而不是应用程序池标识。或者专门设置一个新用户在apppool中使用。 这通常是由于产品服务器上的一些操作系统加固问题引起的。

【讨论】:

    【解决方案2】:

    它发生在我身上。控制台应用程序肯定。以管理员身份启动并重试?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-01-17
      • 2019-12-12
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-15
      • 1970-01-01
      相关资源
      最近更新 更多