使用烧杯会话检查用户是否在Pyramid中进行了身份验证

时间:2011-09-02 10:02:39

标签: python session authentication pyramid

我正在使用Pyramid和Beaker会话创建一个webapp 我希望在成功登录后将用户ID存储在request.session['user_id']以及其他一些信息中,然后使用它来检查用户是否已登录:

if 'user_id' in request.session:
    # user signed in
else:
    # user not signed in or session is expired

问题是:依靠会话是否安全?或者使用来自authenticated_userid()的{​​{1}} remember()forget()金字塔的pyramid.security会更好和/或更安全吗?

1 个答案:

答案 0 :(得分:11)

使用pyramid_beaker和SessionAuthenticationPolicy,然后使用pyramid.authentication.authenticated_userid()检查他们是否已登录。如果它返回None,则它们不会。