Насколько я знаю, у объекта Session (HTTPSessionState) нет никаких событий OnChanged, поэтому вам придется проверять каждый раз, однако затраты на выполнение проверки в событии MasterPage Page_Load незначительны.
Вы должны посмотреть на использование встроенного поставщика членства для этого, хотя он имеет специальные элементы управления Login / LoginStatus, которые будут изменять состояние (вы предоставляете шаблону свои собственные изображения / стили и т. Д.), Когда пользователь входит в систему. / выходит из системы / является анонимным