【问题标题】:.Net Core on IIS8 CreateDirectory no permissionsIIS 8 上的 .Net Core 创建目录没有权限
【发布时间】:2019-07-20 15:27:42
【问题描述】:

我在部署应用程序并在 IIS8 上启动它时尝试创建一个文件夹,但出现此错误:

UnauthorizedAccessException: 访问路径 'C:\ApplicationsFolder\CentralApplicationSettings\' 被拒绝。

这是我的 Startup.cs 中的代码:

var centralApplicationSettingsDirectory = System.IO.Directory.CreateDirectory(Environment.GetEnvironmentVariable(MSCASGlobals.CentralApplicationSettings));

当我部署并启动我的应用程序时,该文件夹未创建,当我尝试在浏览器中启动应用程序时,我收到上述错误。

我已经尝试为我的应用程序池身份授予读/写权限,但它仍然不起作用。我还缺少什么?

【问题讨论】:

  • 您的应用程序池以什么用户身份运行?

标签: c# asp.net asp.net-core iis


【解决方案1】:

您是否尝试过为 IIS_USR 添加权限?

这里是链接: IIS_IUSRS and IUSR permissions in IIS8

或者

为应用程序清单文件添加以下行

<requestedExecutionLevel level="requireAdministrator" uiAccess="false" />

这会导致您的应用程序将以管理员权限运行,并且您可以访问 C 盘。

【讨论】:

  • 我为 IWAM_FileSharing 添加了权限
  • 你给我的链接是一个非常具体的文件夹。我希望能够在c盘创建一个文件夹
  • 为什么不手动创建,然后您可以在链接中添加权限。或者这是否需要以编程方式创建?
  • 有必要以编程方式创建它。问题是,如果我在此链接中创建它:C:\Inetpub\vhosts\stardocs-digital.my\dev.stardocs-digital.my,它工作正常。我尝试复制权限,但它不起作用。
  • 您好,感谢您的回答。这是安全风险吗?
猜你喜欢
  • 2017-05-26
  • 2011-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-06-09
  • 2015-06-05
相关资源
最近更新 更多