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

Dmi*_*kin 12 python authentication session pyramid

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

if 'user_id' in request.session:
    # user signed in
else:
    # user not signed in or session is expired
Run Code Online (Sandbox Code Playgroud)

现在的问题是:是否可以安全地依赖于会话或将是更好的和/或使用更安全金字塔的authenticated_userid()remember()forget()pyramid.security

Chr*_*ugh 11

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