Python 金字塔web应用程序中的(会话)身份验证

Python 金字塔web应用程序中的(会话)身份验证,python,pyramid,beaker,Python,Pyramid,Beaker,我正在开发一个基于金字塔框架的python web应用程序。我正在尝试向其添加会话身份验证。因此,我明白: 用户可以登录/注销(需要安全性);用户数据保存在数据库中 身份验证通过会话(request.session)进行处理 首先:会话身份验证是一个好的选择还是有更好的选择? 第二:我不能真正理解文档和示例的头绪 到目前为止,我已经遵循到目前为止,我有一个登录/注销表单。但是,我的authn\u策略是 由于pyramid中的会话工厂是不安全的(请参阅),因此我改用*pyramid_烧杯* 配

我正在开发一个基于金字塔框架的python web应用程序。我正在尝试向其添加会话身份验证。因此,我明白:

  • 用户可以登录/注销(需要安全性);用户数据保存在数据库中
  • 身份验证通过会话(
    request.session
    )进行处理
首先:会话身份验证是一个好的选择还是有更好的选择? 第二:我不能真正理解文档和示例的头绪

到目前为止,我已经遵循到目前为止,我有一个登录/注销表单。但是,我的
authn\u策略是

由于pyramid中的会话工厂是不安全的(请参阅),因此我改用*pyramid_烧杯*

配置为: 在
\uuuu init\uuuuu.py
中:
会话工厂=会话工厂来自设置(设置)

在.ini文件中:

beaker.session.lock_dir = %(here)s/data/sessions/lock
beaker.session.type = ext:database
beaker.session.sa.url = mysql://user:pass@localhost:3306/db
beaker.session.table_name = user_session

我希望我能把问题说清楚。

我想这取决于你想做什么。如果您使用Bicker,会话身份验证工作正常,但我喜欢使用AuthTktAuthenticationPolicy作为额外的超时和重新发布选项,而且即使您清除会话,您的身份验证也不会消失。

请详细说明。。。在会话中使用烧杯时是否不存在超时和重新颁发选项?无论您在会话中使用什么,标准会话身份验证策略都没有这些选项。