标签: python django security django-authentication django-sessions
如果这是一个新手问题,请原谅。
我正在读取cookie验证,并且遇到了Django究竟如何验证其cookie的问题?
如果我没记错的话,Django会将会话ID存储在cookie中供以后使用。这是否意味着伪造cookie的任何人都可以使用任意会话数据?
答案 0 :(得分:1)
验证本身很简单:针对会话后端中的数据。如您所见[{3}},您在Cookie中收到的数据来自您的会话session_key属性。它的存储位置取决于您的会话后端,默认情况下它是数据库。
session_key
不可能"假"一块饼干。除非有人偷了你的SECRET_KEY。更详细的信息here。
SECRET_KEY
如果有人从客户那里偷了一个cookie,小偷就可以使用客户端的会话直到它过期。你不能阻止它。如果你知道这种情况,客户的密码需要尽快更改,因为它会导致用户的现有会话无效(从Django 1.10开始)。
更新:你的问题让我很好奇会话后端是否实际存储了这个值...数字,它确实存在。 (我在那里也给人留下了深刻的印象,是Windows的pgAdmin) here