request.response.set_cookie(..)
与使用and相比,我不明白设置未加密会话工厂以设置 cookie 之间的区别request.cookies[key]
。
问问题
445 次
1 回答
7
UnencryptedCookieSessionFactory
管理一个cookie,即已签名。这意味着客户端可以读取1 cookie 中的内容,但不能更改cookie 中的值。
如果直接使用 设置cookie response.set_cookie()
,客户端不仅可以读取cookie,还可以更改cookie的值,您将无法检测到内容被篡改。
此外,UnencryptedCookieSessionFactory
让我们存储任何 python 结构,它会负责对这些结构进行编码以适应 cookie 的限制;您必须手动使用.set_cookie()
.
1您必须对 cookie 进行 base64 解码,然后使用pickle
模块对内容进行解码。因为 cookie 是经过加密签名的,所以通常适用的安全问题得到了pickle
缓解。
于 2013-01-26T17:15:28.793 回答