限制对视图的访问以仅进行调试

时间:2011-06-05 06:06:59

标签: asp.net-mvc-3 access-control appharbor

我有一个网页,我正在使用asp.net mvc3。我正在通过appharbor部署它,这太棒了。整个页面是公共的,所以我不需要用户身份验证或类似的东西,但有管理页面只有我应该能够访问。

我希望某些视图只能在我在调试模式下本地运行时才能访问,而不是一旦我在appharbor中部署了这些视图。

我可以使用某种环境设置:

  1. 根据页面元素(链接)是在本地运行还是在服务器上运行来显示或隐藏页面元素(链接)。
  2. 如果应用程序在appharbor上运行,则限制对整个视图的访问(返回403)。
  3. 如何在视图和控制器中阅读和应用这些设置?

2 个答案:

答案 0 :(得分:2)

粗略的方法是使用

#if DEBUG
    ... some code here
#else
    ... some other code here
#end if

as:http://haacked.com/archive/2007/09/16/conditional-compilation-constants-and-asp.net.aspx#51205

Is there an #IF DEBUG for Asp.net markup?

答案 1 :(得分:1)

AppHarbor现在支持web.config转换,因此在您的发行版或AppHarbor web.config中,您可以阻止这些文件或web.config中的文件夹。