В качестве альтернативы, есть ли более гибкий способ управления доступом к
во время выполнения?
Вы можете расширить все защищенные страницы с BasePage
, который имеет что-то подобное внутри Page_Load event
if(!HttpContext.Current.User.Identity.IsAuthenticated)
Response.Redirect("Login.aspx");
Обновление
Если вы не знаете, какие страницы будут защищены, измените мой код выше, чтобы прочитать страницы, которые необходимо защитить из таблицы базы данных, и сравнить текущее имя страницы с теми, которые содержатся в списке из таблицы. , Например, вы можете перехватить список и автоматически завершать кэш каждые 20 минут. По крайней мере, вы сможете пометить страницу как безопасную без перезапуска приложения, сохраняя некоторую гибкость, поскольку вам не нужно заранее знать, какие из них должны быть безопасными.