允许 ASP.NET Core API 应用程序的写入权限

Posted

技术标签:

【中文标题】允许 ASP.NET Core API 应用程序的写入权限【英文标题】:Allow write permissions for ASP.NET Core API application 【发布时间】:2021-08-05 00:28:03 【问题描述】:

我正在开发一个下载文件的 ASP.Net Core 3.1 API 应用程序。它将这些文件保存到网站外部的文件夹中。我知道允许进程直接写入目标会有一个问题。我发现这篇文章讨论了在 IIS7 (IIS7 Permissions Overview - ApplicationPoolIdentity) 上为 .Net Framework 进行设置,但我在 IIS 8.5 上进行部署,但找不到用户“IIS AppPool\DefaultAppPool”。

Q1:那么“IIS AppPool”部分到底是什么?通常我习惯使用机器名或域名,但它显然更简洁,因为它可以在所有机器上找到。

解决了!!!!!!我已经为应用程序创建了一个独特的应用程序池,我们称之为“上传系统”。我想问如何将它输入到“选择用户或组”中,并认为我应该快速测试它没有引号......它成功了!!!!我仍然想知道 Q1 的答案,但我得到了主要问题!!!!

【问题讨论】:

【参考方案1】:

您找不到 DefaultApppool 的原因是您的应用程序池可能不再有此应用程序池。如果你想给文件夹写权限,你应该试试 IIS AppPool\Application pool name。例如,您的应用程序池名称是 Test。你应该分配给文件夹的是IIS AppPool\Test

找到你部署的应用程序所在的应用程序池,然后将此用户权限分配给该文件夹。

【讨论】:

谢谢!是你的回复让我玩得更多,这让我发现了我的错误,我在名字周围添加了引号。删除引号后,

以上是关于允许 ASP.NET Core API 应用程序的写入权限的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 窗体应用程序中托管 ASP.NET Core API

ASP.NET Core 2.2 WebAPI 405 方法不允许

将文件从 ASP.NET Core Web api 发布到另一个 ASP.NET Core Web api

asp.net core 系列之允许跨域访问2之测试跨域(Enable Cross-Origin Requests:CORS)

Asp.Net Core Data Protection API 用于保护数据库中的数据

如何使用 MongoDB 将动态 JSON 属性发布到 C# ASP.Net Core Web API?