我需要根据某些标准重新布线

时间:2009-09-17 19:39:43

标签: asp.net-mvc

如果用户已登录且设置了ChangePasswordRequired标志,我需要忽略当前操作并将其重定向到ChangePassword操作。

换句话说,我不希望用户在他或她更改密码之前能够做任何事情。

我的基本控制器应该覆盖哪种方法以及如何处理重定向?

2 个答案:

答案 0 :(得分:3)

您应该创建自己的动作过滤器。

您要使用的操作过滤器的确切类型是实现IAuthorizationFilter的方法,以及您希望将其用于OnAuthorizing()或关闭的方法。此过滤器类型在所有其他类型之前执行。

您可以使用自己的过滤器代替[Authorize]过滤器。请务必让您的国旗检查用户是否经过身份验证(Request.IsAuthenticated

善,

答案 1 :(得分:1)

我会使用你添加到应该实现此行为的每个控制器类的actionfilter。您可以在此blog post由Phil Haack

阅读更多内容