asp.net-mvc-2 - 我们可以在 web.config 中使用 <location> 标记来引用 MVC 应用程序中的 Controller 吗

标签 asp.net-mvc-2 web-applications .net-3.5 web-config

我们需要将对应用程序中某些 Web 端点的访问限制为一组特定的 IP 地址。

在传统的 Web 表单应用程序中,我们已经成功地在我们的 web.config 中使用 标记的组合来限制对我们的处理程序 (ashx) 的访问。这种相同的方法是否适用于 ASP.NET MVC 应用程序,其中端点是 Controller /操作?我们在位置的“路径”属性中仅指定 Controller 名称的第一次尝试没有奏效。

另一种方法是在该 Controller 上使用 MVC 授权/过滤属性来获得正确的限制,但我们更愿意纯粹从我们的 web.config 而不是在代码中控制它。

最佳答案

Will this same approach work for a ASP.NET MVC application where the end point is a controller/action instead.

也许是,也许不是。在 MVC 应用程序中使用此标记被认为是一种不良做法。我建议实现自定义 [Authorize] 过滤器。当然,您仍然可以从 web.config 外部化和读取授权/未授权 IP 地址列表,以简化管理并避免在更改应用程序时重新编译应用程序。

关于asp.net-mvc-2 - 我们可以在 web.config 中使用 <location> 标记来引用 MVC 应用程序中的 Controller 吗,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5107729/

相关文章:

asp.net-mvc - 如何在 ASP.NET MVC 中定义表单字段前缀

c# - 使用现有数据库中的数据在 ASP.NET MVC 中创建数据库模拟

asp.net - 如何以编程方式在 ASP.NET MVC 中的 Razor View 中显示/隐藏区域

java - Eclipse 重构失败 -> 不断抛出异常!

javascript - react : TypeError: Cannot read property 'addEventListener' of null

asp.net-mvc-3 - MVC2 - 如何在模板中获取父模型(容器)

java - 如何在 Java EE 应用程序中使用多线程环境

c# - bool 作为 CheckBox 的数据源(Bool 在另一个线程中更新而不是它正在影响的线程)

c# - 将 WPF 项目从 3.5 迁移到 4.0 后,什么可能导致性能下降?

c# - 任务并行库时间分片