tornado里面有关几个cookie的处理,在web.py文件里。 get_cookie,set_cookie普通的设置cookie,clear_cookie,clear_all_cookies是删除cookie。 还有两个是get_secure_cookie,set_secure_cookie,这两个的功能是能够防止用户的cookie被伪造。 先看看函数处理方法。set_secure_cookie,里边与set_cookie的区别就是value经过create_signed_value的处理。 create_signed_value,得到当前时间,将要存的value base64编码,通过_cookie_signature将 加上name,这三个值加密生成签名。然后将签名,value的base64编码,时间戳用|连接,作为cookie的值。 _cookie_signature,就是根据settings里边的 保密的密钥生成签名返回。 get_secure_cookie,用|分割cookie的value,通过name,原value的base64的编码,时间戳得到签名,验证签名是否正确,正确返回,还多了一个过期时间的判断 如果别人想伪造用户的cookie,必须要知道密钥,才能生成正确的签名,不然通过get_secure_cookie获取value的时候,不会通过验证,然后就不会返回伪造的cookie值。

上一篇:
下一篇:

相关文章:

Categories: 博客记录

0 Responses so far.

Leave a Reply