06.07.2004, 12:16 | #1 |
Участник
|
А почему Завершить сессию Не работает?
Или не всегда работает.
ЗЫ Тонкий клиент,3-х уровневая арх-ра. |
|
06.07.2004, 12:34 | #2 |
Member
|
А у вас клиент тонкий? А у сессии?
__________________
С уважением, glibs® |
|
06.07.2004, 15:27 | #3 |
Участник
|
все клиенты тонкие. и сессии.
|
|
06.07.2004, 15:53 | #4 |
Модератор
|
Эх. Тряхну стариной. Вот код, который запускался из startup Applicationa и следил, если ли уже открытые сесси у данного пользователя. Если есть, то по запросу убивал. Для верности было сочетание terninate + notify. Просто terminate не всегда убивал сессии. Попробйте!
PHP код:
Георгий |
|
|
За это сообщение автора поблагодарили: Logger (5). |
06.07.2004, 17:47 | #5 |
Moderator
|
Добавил часть приведенного кода под кнопку завершения сессии - не работает все равно Глупость, конечно, но неужели важно, чтобы именно при запуске и именно свои сессии снимать?
__________________
Андрей. |
|
06.07.2004, 18:19 | #6 |
Модератор
|
Андрей! Так затем и писалась данная модификация, т.к. пользователи любили бегать от компа к компу (!) и оставлять за собой открытые сессии. А у нас часто ввод данных (вырабока и т.п) или ограниченние по вводу данных (одобрить маршрут, цену...) завязано на текущего пользователя. Ну, и плюс самые элементарные соображения безопасности. А так.. бардак творился, в общем. (Свою сессию она не убивает, кстати )
Потом появилось вот что: часть сессий "зависало" и ничем их было не выковырять После этого появились попытки убить с помощью такого кода: PHP код:
На деле же, кажется, все равно не работает... в 3х звенке "наглухо" зависшая сессия погибала только при перестарте АОСа Может, у кого есть какие соображения? С Уважением, Георгий |
|
06.07.2004, 18:26 | #7 |
Модератор
|
Developers's Guide \ Executing commands on startup (c)
Note The startup methods are used for vital system and version specific calls, and you should never modify them directly. Serious consequences may follow if the SYS layer versions of the methods are not called. А какие права нужны пользователю , чтобы прибивать чужие (неважно, что USERID тот же) сессии? |
|
06.07.2004, 18:43 | #8 |
Модератор
|
Хороший вопрос.
Беда в том, что даже tuning и admin не убивали "мертвые души" |
|
06.07.2004, 18:49 | #9 |
Модератор
|
А "независшая" система погибала, (даже на самых маленьких правах !!!) Только при э-э-э... Getting focus. Имхо, при первом же обращении к Б.Д.
|
|
06.07.2004, 19:06 | #10 |
Модератор
|
Ясно. В процессе ответов вспомнился и ответ на вопрос. Вы можете убить сессию из Администрирование -> Активные пользователи, но реально он умрет, когда начнет работать. При первом же щелчке в главном меню (сиречь первом обращении к БД) ему скажут, что его сессию прервали. То же, при посылке сообщения и получения просто фокуса программой.
Но это не объясняет моей проблемы с мертвыми сессиями... |
|
21.08.2008, 10:12 | #11 |
Участник
|
а вот в 2.5 этой кнопочке убить сессию нет ((
можно ли ее туда добавить ? |
|
21.08.2008, 13:36 | #12 |
Moderator
|
2propeller:
Тему-дубль этого вопроса я прибил, чтобы в 2х темах одинаковые дискуссии не плодились. Насколько я помню (сейчас 2.5 под рукой нет), кнопка была. Может, на форме убрали? А класс SysUsersTerminate есть в репозитарии?
__________________
Андрей. |
|
21.08.2008, 13:53 | #13 |
Участник
|
неа такого нет(
|
|
28.08.2008, 17:58 | #14 |
Гость
|
Существуют ли способы убить свою собственную сессию?
|
|