在 ASP .NET 5 中如何保护配置数据?
Posted
技术标签:
【中文标题】在 ASP .NET 5 中如何保护配置数据?【英文标题】:How is configuration data protected in ASP .NET 5? 【发布时间】:2015-08-09 09:45:26 【问题描述】:ASP .NET 5 提供了许多选项来提供配置数据,而不是要求Web.config
。这方面的信息可以在以下位置找到:
ScottGu 文章的 cmets 部分有一个有趣的问题:
示例中的 config.json 文件,webserver/http 服务器如何保护它? web.config 受 IIS 保护,但如果可以使用任何文件(这很好),它还会带来负担,即如果在 URL 中请求该文件,则 web 服务器不应提供该文件。还是有预制名称可供选择?
谁能回答这个问题?
【问题讨论】:
【参考方案1】:在以前版本的 ASP.NET 中,项目的根目录也是网站的根目录。创建了一些机制来防止访问不应被外部世界访问的文件(例如 mime 类型的白名单,RequestFilteringModule)。
这在 ASP.NET 5 中发生了变化,因为网站根不再是项目根。 网站根文件夹是您项目目录中的子文件夹(默认名为 wwwroot,但可以在 project.json 中更改)。 这意味着网站根文件夹之外的所有内容都无法访问外部世界。
config.json 文件位于 wwwroot 之外,因此它永远不会被任何请求处理。
【讨论】:
以上是关于在 ASP .NET 5 中如何保护配置数据?的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 ASP.NET 5 MVC 6 保护 Web API