Как сделать так, чтобы сессионный cookie-файл HttpOnly был установлен в пилонах?

Я использую модуль authkit с Pylons и вижу, что сессионный cookie, который он устанавливает (метко названный authkit), не установлен как HttpOnly.

Есть ли простой способ сделать это HttpOnly? (Под "простым" я подразумеваю тот, который не предполагает взлома кода authkit.)

1 ответ

Решение

Это не документировано в authkit, потому что он только начал работать в Python 2.6 (см. Здесь), но если у вас есть Python 2.6, тогда

authkit.cookie.params.httponly = true

в конфиге должно работать и делать что хочешь.

Authkit внутренне использует Cookie.SimpleCookieи это то, что ограничивает ключи, которые вы можете иметь для authkit.cookie.params. - до Python 2.5 они были только ключами, поддерживаемыми стандартом RFC 2109, но в Python 2.6 полезными httponly добавлено расширение - вот как authkit получил поддержку для него автоматически... потому что, вполне правильно, он не выполняет свои собственные проверки, а скорее делегирует все проверки SimpleCookie,

Если вы застряли с Python 2.5 или более ранней версии, то для выполнения этой работы потребуется немного больше усилий (не изменение authkit, а удаление кода Python Cookie.py, или, если возможно, лучше, установка более новой версии Cookie.py из Исходники Python 2.6 находятся в каталоге, который находится раньше в sys.path, чем каталог собственной стандартной библиотеки Python).

Другие вопросы по тегам