【发布时间】:2018-10-15 17:33:17
【问题描述】:
我需要在不添加 Authorize 属性的情况下为特定路由添加授权。有什么办法可以在启动时做到这一点?我知道我可以将 Authorize 属性全局添加到所有路由,但我需要仅将授权添加到控制器中的特定方法,而无需触及该控制器中的任何代码。
【问题讨论】:
-
您可以通过在您希望的方法上使用 [Authorize] 标签来为方法添加授权
-
这可能是重新审视“不接触该控制器中的任何代码”要求的好时机。似乎无论你做什么,它都会成为一个 hack,这将使未来的调试和支持变得不必要地困难。为什么你想在不改变代码的情况下改变某事物的行为?
-
你不想更新控制器的原因是什么?
-
如果是这种情况,您可以扩展 AuthorizeAttribute,也可以创建一个 HttpModule 来处理请求。
标签: c# asp.net-mvc asp.net-web-api