【发布时间】:2014-03-07 19:33:44
【问题描述】:
在我的 C# MVC 项目中,用户可以修改视图以自定义其页面外观(他们可以编辑视图 cshtml 并使用 Razor 引擎)。
如何限制视图引擎访问某些命名空间,如 System.IO、System.Sql ?
我计划从用户的标记中删除“System.XXX”,但默认情况下会导入一些命名空间,例如 System.IO。所以用户仍然可以运行一些危险的命令,比如 File.Delete...
再说一次,我怎样才能限制用户只编辑 CSHTML 和一些命名空间而不是所有命名空间?
【问题讨论】:
-
我遇到了同样的问题。在我的一个项目中,我应该授予用户编辑视图的权限,但其中一位用户添加了一些危险代码并通过 System.IO 命令删除了我的文件。 (他在 Razor 块中添加了代码)
标签: asp.net-mvc