1) Когда пользователь выходит из системы, я бы рекомендовал выполнить Session.Abandon(). Если пользователь нажимает кнопку «Назад» в браузере, он может видеть кэшированную версию старой страницы (это зависит от браузера), но он все равно ничего не сможет сделать. Отключить кэширование на ваших страницах, и пользователь не должен даже видеть кэшированные старую версию :) простой способ сделать это было бы добавить следующее в Application_BeginRequest
global.asax в:
HttpContext.Current.Response.Cache.SetCacheability(HttpCacheability.NoCache);
HttpContext.Current.Response.Cache.SetNoStore();
2) ваш web.config установить сеанс lifetim 10 минут, добавочный .. это будет делать трюк
<system.web>
<authentication mode="Forms">
<forms defaultUrl="~/LoggedIn.aspx" loginUrl="~/Login.aspx" protection="All" path="/" slidingExpiration="true" timeout="10"/>
</authentication>
</system.web>
3) Вы можете сделать это с помощью правил авторизации в web.config.Если вы не хотите, не анонимных пользователей получить доступ к веб-сайт просто разрешить доступ только для зарегистрированных пользователей, как это:
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
Если вы хотите ограничить доступ не ко всему веб-сайт, но только в некоторых областях (например, в области MyAccount , то вы можете добавить это вместо .. Примечание:.! Web.config может иметь несколько <location>
элементов
<location path="MyAccountFolder">
<system.web>
<authorization>
<deny users="?"/>
</authorization>
</system.web>
</location>
Там одно важное замечание о месте тега Путь делает сейчас начать с «/» Так что, если вам хотите защитить папку/MyAccount, тогда ваш тег начнется следующим образом:
<location path="MyAccount" />
Что вы сделали до сих пор? –
i я новичок в asp.net. Я занимался проектированием n кодирования (все еще в процессе) , но ничего особенного в отношении сеансов. – piku