На вашем global.asax вы можете сделать что-то вроде этого.
Application_OnAuthenticateReuqest(object sender, EventArgs e)
{
if(!UserHasAccess())
{
FormsAuthentication.SignOut();
}
}
private bool UserHasAccess()
{
var user = Membership.GetUser(Context.User.Identity);
return user.isApproved;
}
Возможно, вы захотите рассмотреть какую-то форму кеширования ...
И, между прочим, я предполагаю, что вы используете надлежащие атрибуты [Authorize] в ваших методах контроллера.