Если вы используете любой из встроенных вариантов аутентификации:
[Authorize(Roles = "Administrator")]
public class AdminController : Controller
{
}
Редактировать
Чтобы ограничить конкретным пользователем:
[Authorize(Users = "Admin")]
public class AdminController : Controller
{
}
Edit2
Да, вы можете, но это вроде hack .Создайте свой собственный класс и выведите его из RouteBase
.
public class MyRoute : RouteBase
{
public override RouteData GetRouteData(HttpContextBase context)
{
if (context.Request.Uri == XXX && context.User != YYYY)
return forbiddenRoute;//redirect to forbidden page.
else
return null;
}
}
Затем добавьте его в ваш global.asax.