Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вынести время сессии в пользовательскую настройку ASP.NET-проекта / 25 сообщений из 28, страница 1 из 2
14.05.2012, 10:46
    #37792743
Игорь1973
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Добрый день.

Когда-то очень давно, еще во времена первой VS2002 .NET, у меня было вынесено время сессии (20 мин по умолчанию) в настройки приложения, и пользователи могли его изменять. При этом в коде была всего одна строчка:

Код: vbnet
1.
Session.Timeout = 540 '9 hours



Не знаю, начиная с какой версии ASP.NET, но сейчас это не работает.
Более того пробовал вручную в очень многих местах настраивать IIS7.0 (что в Windows 7) и выставлял везде явно 540, но так до сих пор ничего и не добился. Время сессии проекта у меня так осталось прежним - 20 минут.
Не мог бы кто-нибудь четко подсказать все места где надо менять время сессии, и возможно ли вообще нынче выносить этот параметр в настройки для конечного пользователя?

Заранее спасибо.
...
Рейтинг: 0 / 0
14.05.2012, 11:02
    #37792770
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
...
Рейтинг: 0 / 0
14.05.2012, 11:13
    #37792799
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Игорь1973у меня было вынесено время сессии (20 мин по умолчанию) в настройки приложения, и пользователи могли его изменять.
Безумие. Пользователь 1 выставил сессию в 30 минут, Пользователь 2 выставил сессию в 35 минут. Внимание вопрос: какой таймаут сессии у веб-приложения?
...
Рейтинг: 0 / 0
14.05.2012, 11:32
    #37792856
timda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
МСУИгорь1973у меня было вынесено время сессии (20 мин по умолчанию) в настройки приложения, и пользователи могли его изменять.
Безумие. Пользователь 1 выставил сессию в 30 минут, Пользователь 2 выставил сессию в 35 минут. Внимание вопрос: какой таймаут сессии у веб-приложения?

Почему безумие. На сколько куку приложение выставило - на столько и будет.
...
Рейтинг: 0 / 0
14.05.2012, 11:51
    #37792906
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timdaПочему безумие. На сколько куку приложение выставило - на столько и будет.
Вам дали ссылку, читай внимательно:

http://msdn.microsoft.com/ru-ru/library/system.web.sessionstate.httpsessionstate.timeout.aspx Свойство Timeout можно задать для приложения в файле Web.config

Это настройка всего приложения в целом, а не конкретного юзера. Во-вторых, как только юзер поменяет это значение, произойдет рестарт всего приложения. В-третьих, в чем смысл, если один пользователь хочет одно значение, а другой пользователь - другое? Вечное перетягивания одеяла на себя? Вот поэтому всё, что вы пишете - безумие.
...
Рейтинг: 0 / 0
14.05.2012, 13:54
    #37793167
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timdaМСУпропущено...

Безумие. Пользователь 1 выставил сессию в 30 минут, Пользователь 2 выставил сессию в 35 минут. Внимание вопрос: какой таймаут сессии у веб-приложения?

Почему безумие. На сколько куку приложение выставило - на столько и будет.
Хм.. не.. кука и сессия как бы разные понятия...
Ты куку можешь хоть на год установить, а на серваке сессия твоя сбросится при первом обновлении/простое или чего еще (есть, конечно, способы избежать этого, но по дефолту так)
Поправь, если считаешь что ошибаюсь

Рекомендую почитать про сессии поподробнее: Общие сведения о состоянии сеанса ASP.NET
...
Рейтинг: 0 / 0
14.05.2012, 17:07
    #37793575
Игорь1973
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
У моего приложения пользователь с ролью "администратор" был всего один, какое время сессии он задавал, такое оно и действовало для всех других пользователей. Время сессии - это общая настройка, а не персональная.
...
Рейтинг: 0 / 0
15.05.2012, 16:39
    #37795578
timda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
МСУВам дали ссылку, читай внимательно:
читай или читайте? :)

МСУ, не хочу оценивать ваши профессиональные способности в технике, но я просто старый уже и у меня свои тараканы в голове.
Но поверьте мне, хотя бы потом что я программирую коммерчески с 2000 года что вариантов задач и способов решений этих задач может найтись масса.
Клиент - в общей массе, глуповат, туповат. У нас нет прослойки грамотного и профессионального ИТ-менеджмента с обоих сторон (заказчик, исполнитель).

Данная задача встречалась мне на реальном проекте, причем я бы не сказал, что постановка задачи про сессии такая глупая.
Речь идет о чем. Есть приложение на предприятии, им пользуются сотрудники.
Один сотрудник (назовем его менеджер) раз в 15 минут бегает к начальнику на ковер, а другой сотрудник (пусть будет клерк) сидит по 2-3 часа за рабочим местом (неотлучно) и оба они работают в приложении - периодически туда заходят. С точки зрения безопасности клерку нужен таймаут сессии где то 1-2 часа, а менеджеру и 15 минут многовато. Чем вам не задача для разных таймаутов сессии?
...
Рейтинг: 0 / 0
15.05.2012, 16:43
    #37795588
timda
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
SanSYSХм.. не.. кука и сессия как бы разные понятия...
Ты куку можешь хоть на год установить, а на серваке сессия твоя сбросится при первом обновлении/простое или чего еще (есть, конечно, способы избежать этого, но по дефолту так)
Поправь, если считаешь что ошибаюсь

Конечно же согласен с вами, коллега, то что сервер осуществляет дополнительный контроль над доступом - бесспорно.
Хотя бы ситуация блокировки юзера, и даже при текущей работе в приложении.
Но сам механизм аутентификации на базе протокола HTTP как был с 90-х годов на куках - так до сих пор на нем и остался.
...
Рейтинг: 0 / 0
16.05.2012, 11:29
    #37796647
AHTOH_L
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
автор
Один сотрудник (назовем его менеджер) раз в 15 минут бегает к начальнику на ковер, а другой сотрудник (пусть будет клерк) сидит по 2-3 часа за рабочим местом (неотлучно) и оба они работают в приложении - периодически туда заходят. С точки зрения безопасности клерку нужен таймаут сессии где то 1-2 часа, а менеджеру и 15 минут многовато. Чем вам не задача для разных таймаутов сессии?


Не вижу связи во времени постоянной работы за компом и временем жизни сессии.
С точки зрения безопасности нужно всем сделать как можно меньшее время.
...
Рейтинг: 0 / 0
16.05.2012, 11:39
    #37796680
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timda,

быть может поступить проще?
при простое яваскриптом выводить окошко - вы будете отключены через 60(,59,58...) сек. продолжить?
если кнопа продолжить не нажата - переадрисовываем на страницу разлогина, если нажата - сессия продолжается
...
Рейтинг: 0 / 0
16.05.2012, 11:43
    #37796693
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Timeout 20 минут, куда уж проще?
...
Рейтинг: 0 / 0
16.05.2012, 23:43
    #37797955
Иван Васильевич
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
SanSYStimda,

быть может поступить проще?
при простое яваскриптом выводить окошко - вы будете отключены через 60(,59,58...) сек. продолжить?
если кнопа продолжить не нажата - переадрисовываем на страницу разлогина, если нажата - сессия продолжается

А в это время ничего не подозревающий пользователь работает на другой странице :)
...
Рейтинг: 0 / 0
17.05.2012, 00:01
    #37797974
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timdaчитай или читайте? :)
...
Чем вам не задача для разных таймаутов сессии?
Ок. При всем уважении к Вам, задача не реальна по причине того, в асп.нет так устроена сессия. Таймаут един для всех.
...
Рейтинг: 0 / 0
17.05.2012, 01:16
    #37798026
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
SanSYSвыводить окошко - вы будете отключены через 60(,59,58...) сек. продолжить?Нет, надо выводить окошко "Вы не работаете уже 10(,11,12...) сек." :)
...
Рейтинг: 0 / 0
17.05.2012, 01:31
    #37798031
Где-то в степи
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
а зачем окошко, сессию можно и с клиента удлинять в фоне..
...
Рейтинг: 0 / 0
17.05.2012, 07:49
    #37798123
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Окошко, чтобы работали (запросы слали серверу), иначе начальнег запалит :)
...
Рейтинг: 0 / 0
17.05.2012, 08:57
    #37798169
SanSYS
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Где-то в степиа зачем окошко, сессию можно и с клиента удлинять в фоне..
читай 12548858
...
Рейтинг: 0 / 0
17.05.2012, 09:23
    #37798197
МСУ
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
Не нужны ни окошки, ни свистоперделки, ни js. Нужно работать так, как дикутет нам сервер приложений - единый таймаут сессии уровня веб апп, который конфится в web.config (можно этот сеттинг вынести и в гуй для админа, но не вижу особого в этом смысла - у IIS'а тоже есть гуй).
...
Рейтинг: 0 / 0
17.05.2012, 09:58
    #37798254
skyANA
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
МСУНе нужны ни окошки, ни свистоперделки, ни js. Нужно работать так, как дикутет нам сервер приложений - единый таймаут сессии уровня веб апп, который конфится в web.config (можно этот сеттинг вынести и в гуй для админа, но не вижу особого в этом смысла - у IIS'а тоже есть гуй).+1
...
Рейтинг: 0 / 0
17.05.2012, 11:35
    #37798476
iConst
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timdaМСУВам дали ссылку, читай внимательно:
читай или читайте? :)

МСУ, не хочу оценивать ваши профессиональные способности в технике, но я просто старый уже и у меня свои тараканы в голове.
Но поверьте мне, хотя бы потом что я программирую коммерчески с 2000 года что вариантов задач и способов решений этих задач может найтись масса.
Клиент - в общей массе, глуповат, туповат. У нас нет прослойки грамотного и профессионального ИТ-менеджмента с обоих сторон (заказчик, исполнитель).

Данная задача встречалась мне на реальном проекте, причем я бы не сказал, что постановка задачи про сессии такая глупая.
Речь идет о чем. Есть приложение на предприятии, им пользуются сотрудники.
Один сотрудник (назовем его менеджер) раз в 15 минут бегает к начальнику на ковер, а другой сотрудник (пусть будет клерк) сидит по 2-3 часа за рабочим местом (неотлучно) и оба они работают в приложении - периодически туда заходят. С точки зрения безопасности клерку нужен таймаут сессии где то 1-2 часа, а менеджеру и 15 минут многовато. Чем вам не задача для разных таймаутов сессии?
Сама задача - бред. Если контора таким образом пытается повысить эффективность, то того, кто это требует - в отставку. Это крайне некомпетентный управленец. Проверено неоднократно: там, где ловят жопочасы, там проку нет и не будет.
Здесь тоже самое, что и в безопасности - что не мудри, но если пользователь развешивает пароли, пренебрегает правилами и т.п. - любая система спасует.

И если уж по теме - то фиксировать активность пользователя в базе. Что фиксировать и как - второй вопрос.

против ломаВспомнилось: как-то у охранников видел фишку - они положили лазерную мышку на специальную бумажку (додумались-же!) от которой курсор постоянно "дрожал". Таким образом они предотвратили отключение дисплея компьютера куда были выведены камеры видеонаблюдения. :)
...
Рейтинг: 0 / 0
17.05.2012, 11:55
    #37798524
ShSerge
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
timda...хотя бы потом что я программирую коммерчески с 2000 года...
А у меня в трудовой написано, что я инженер-программист с 1983 года (я тогда на третьем курсе мехмата МГУ был).
Насчёт сессии - всё просто. Вот так она сделана, хоть ты тресни. (!)Но, никто же не запрещает написать свой собственный механизм. Кстати, довольно просто. Чем спорить с МСУ, уже давно бы написали сами. Это - не четыре дня, сколько Ваш пост держится, а пол-часа работы.
...
Рейтинг: 0 / 0
17.05.2012, 17:41
    #37799629
You got Cobol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
ShSergeпол-часа работы

ну может чуть больше

Код: c#
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
void AuthenticationService_CreatingCookie(object sender, System.Web.ApplicationServices.CreatingCookieEventArgs e)
{
    FormsAuthenticationTicket ticket = new
          FormsAuthenticationTicket
            (1,
             e.UserName,
             DateTime.Now,
             DateTime.Now.AddMinutes(30),
             e.IsPersistent,
             e.CustomCredential,
             FormsAuthentication.FormsCookiePath);

    string encryptedTicket =
         FormsAuthentication.Encrypt(ticket);

    HttpCookie cookie = new HttpCookie(FormsAuthentication.FormsCookieName, encryptedTicket);
    cookie.Expires = DateTime.Now.AddMinutes(30);

    HttpContext.Current.Response.Cookies.Add(cookie);
    e.CookieIsSet = true;
}
...
Рейтинг: 0 / 0
18.05.2012, 01:16
    #37800041
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
You got Cobol,

еще один. Сказали же уже - при чем тут куки и сессия на сервере??
...
Рейтинг: 0 / 0
26.05.2012, 22:12
    #37813150
You got Cobol
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Вынести время сессии в пользовательскую настройку ASP.NET-проекта
anonymous_for_this_themeYou got Cobol,

еще один. Сказали же уже - при чем тут куки и сессия на сервере??

А что такое сессия на сервере?
...
Рейтинг: 0 / 0
Форумы / ASP.NET [игнор отключен] [закрыт для гостей] / Вынести время сессии в пользовательскую настройку ASP.NET-проекта / 25 сообщений из 28, страница 1 из 2
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]