I have a Custom Authorize implementation that receive in consctructor the name of Controllers that don’t need to authorization:
public class ValidatePermissionAttribute : AuthorizeAttribute
{
...
public ValidatePermissionAttribute(params string[] optionalControllers)
{
this._optionalControllers = optionalControllers;
}
...
}
In my global.asax:
public static void RegisterGlobalFilters(GlobalFilterCollection filters)
{
filters.Add(new ValidatePermissionAttribute("Login", "Error"));
}
The problem is, when debug my app in RegisterGlobalFilters I see the parameters in my Filter. But when a Action is requested, the parameters is a string[0].
Conditional Filters in ASP.NET MVC 3 is the way to go. http://haacked.com/archive/2011/04/25/conditional-filters.aspx