Форум сайта python.su
Помогите настроить длительность сейсии. Вроде как есть параметр beaker.session.cookie_expires, но как его заюзать не ясно…
Офлайн
что-то типа
### yourapp.config.environment
import datetime
def load_environment(global_conf, app_conf):
cookie_expires = int(global_conf)
config = datetime.timedelta(cookie_expires)
ну и в конфиге в глобальных настройках:
beaker.session.cookie_expires_in_days = 14
Офлайн
j2aУгу, я так пробовал. Протупил малех. Куки старые не удалял) А они оказывается не заменяются при новом логине) Спасибо!
что-то типа
### yourapp.config.environment
import datetime
def load_environment(global_conf, app_conf):
cookie_expires = int(global_conf)
config = datetime.timedelta(cookie_expires)
ну и в конфиге в глобальных настройках:beaker.session.cookie_expires_in_days = 14
Отредактировано (Май 15, 2008 21:44:27)
Офлайн
Народ, большая просьба просвятить немного по архитектуре beaker.session:
Я так понимаю используется “Cookie Sessions” по умолчанию?
Основная “фича” beaker.session, что сессионные куки (в том числе и для идентификации пользователя) нигде не хранятся, а передаются на сервер в http-пакете? Тогда как происходит отслеживание длительности сессий и как защищаться от подмены http-пакетов?
Ключь для шифрования и снятия “хэша” - “beaker.session.secret”?
В доках (http://wiki.pylonshq.com/display/beaker/Cookie-Only+Sessions) написано, что для шифрования используется пакет pycryptopp, но я его нигде не обнаружил в исходниках?
Извините, за может примитивные вопросы, но по докам и исходникам копать нет пока времени.
Отредактировано (Май 22, 2008 12:45:23)
Офлайн
ingvarБардак в моей голове © Александр Васильев
Народ, большая просьба просвятить немного по архитектуре beaker.session:
Я так понимаю используется “Cookie Sessions” по умолчанию?
Основная “фича” beaker.session, что сессионные куки (в том числе и для идентификации пользователя) нигде не хранятся, а передаются на сервер в http-пакете? Тогда как происходит отслеживание длительности сессий и как защищатся от подмены http-пакетов?
Ключь для шифрования и снятия “хэша” - “beaker.session.secret”?
В доках (http://wiki.pylonshq.com/display/beaker/Cookie-Only+Sessions) написано, что для шифрования используется пакет pycryptopp, но я его нигде не обнаружил в исходниках?
Извините, за может примитивные вопросы, но по докам и исходникам копать нет пока времени.
Отредактировано (Май 22, 2008 12:41:31)
Офлайн
j2aАга, такую архитектуру я по джанго понял, там “некий хеш” - это session_id, а “сессионные данные” хранятся в БД.ingvarБардак в моей голове © Александр Васильев
Народ, большая просьба просвятить немного по архитектуре beaker.session:
Я так понимаю используется “Cookie Sessions” по умолчанию?
Основная “фича” beaker.session, что сессионные куки (в том числе и для идентификации пользователя) нигде не хранятся, а передаются на сервер в http-пакете? Тогда как происходит отслеживание длительности сессий и как защищатся от подмены http-пакетов?
Ключь для шифрования и снятия “хэша” - “beaker.session.secret”?
В доках (http://wiki.pylonshq.com/display/beaker/Cookie-Only+Sessions) написано, что для шифрования используется пакет pycryptopp, но я его нигде не обнаружил в исходниках?
Извините, за может примитивные вопросы, но по докам и исходникам копать нет пока времени.
Обычно сессионные данные (чаще всего - что-то типа словаря) хранятся на стороне сервера, а на стороне клиента в куках – некий хеш, по которому можно вытянуть данные сессии из хранилища на сервере. Здесь, видимо, ты говоришь о том, что в Beaker 0.9 появились cookie-only сессии, когда все данные сессии хранятся в куки у клиента. Чтобы избежать подмены используют цифровую подпись (опция beaker.session.validate_key). Чтобы избежать перехвата данных – используют шифрование (опция beaker.session.encrypt_key). Как ты искал импорт pycryptopp и в какой версии, я не знаю, но в 0.9.4 находится тривиально грепом (hint: session.py:16).
P.S. В Beaker по дефолту обычные сессии, не cookie-only
Отредактировано (Май 22, 2008 13:11:02)
Офлайн
ingvarПлохо искал. Обычно это каталог data рядом с конфигом (см. в конфиге cache_dir и beaker.session.data_dir).
1. Не обнаружил файлов/таблиц БД, хранящих “сессионные данные”…остается сам процесс paster-а
Отредактировано (Май 22, 2008 20:43:44)
Офлайн
j2aМмммм, точно, извините за панику, поторопился и пропустил :)ingvarПлохо искал. Обычно это каталог data рядом с конфигом (см. в конфиге cache_dir и beaker.session.data_dir).
1. Не обнаружил файлов/таблиц БД, хранящих “сессионные данные”…остается сам процесс paster-а
Отредактировано (Май 23, 2008 06:11:28)
Офлайн
Возник нехороший глюк :(. Решил применить
import locale locale.setlocale(locale.LC_ALL,'')
Офлайн