所以通常在我使用的大型网站中,您希望将一些会话信息保存到数据库中,这样 cookie 就不会被轻易复制。
使用flask-login 有一种使用token_loader 的方法,可以实现查询会话表的功能,例如将令牌映射到id。
但这意味着会话表将与用户表大小相同。
id = db.Column(db.Integer, primary_key=True)
token = db.Column(db.String(250), unique=True)
uid = db.Column(db.Integer, unique=True)
@login_manager.token_loader
def token_load(token):
return User.sessions.first().token
我见过有 8 MB 的充满用户表信息的网站。例如,站点会被 Drupal 中的会话表行阻塞。以这种方式存储令牌是否明智?每个用户只需要一行告诉我们他们的代币价值吗?
基本上,它就像一个密码表,用于识别拥有 cookie 而不是实际登录的用户。
有人在烧瓶登录的任何地方看到过这个实现吗?