Flask客户端会话

时间:2013-05-03 21:01:20

标签: python flask session-variables

开始学习Python的Flask网络应用框架,仍在学习曲线上,所以请耐心等待。

我想知道用于安全Web应用程序的客户端会话是否合适。从看来,有一些严重的担忧:

  • 由于所有会话变量都是在cookie中序列化和编码的,因此应该注意它们存储的数据量,以便保持http数据的大小来回传播合理的大小。
  • 我不确定相同的键/值集是否具有相同的序列化值,但如果我在一个会话中获取并存储cookie值,则无法提供相同的值,尽管已加密,在另一个会话中重新评估另一个时间,并使服务器相信那些是真正的会话变量值?一天允许用户做什么并不意味着另一天允许同样的事情。如果这些会话变量值必须始终是安全的,那么保持它们在缓存中的好处是什么呢?什么?然后他们提供的目的不仅仅是让我们使用漂亮的GET URL(即用一些参数代替丑陋的查询字符串)

所以,也许我正在寻找的答案,是Flask客户端会话的限制,考虑可能的中间人攻击(当然是非安全的http会话)或存储的高级恶意用户用于在以后将其转发回来的cookie值。

1 个答案:

答案 0 :(得分:1)

  • 我认为您不必担心大小,因为cookie无论如何都无法存储超过4KB的数据。我非常怀疑你会轻易接近这一点。

  • 它和其他会话一样安全,因为您可以将PHPSESSID cookie带到其他浏览器并使其正常工作,就像您可以使用它一样。什么都没有阻止它。但是这个问题有解决方法,你可以在一个时间限制后过期。例如,请参阅this question。它有关于这个问题的有用答案。

如果您愿意,可以随时使用database session。我相信你也可以找到其他的实现。

修改: Here是其他一些人。