python – 为什么CherryPy会话不需要密钥?

栏目: Python · 发布时间: 5年前

基本上有两种不同的方式来维护会话状态:在服务器上或在客户端上.

使用服务器端方法,您可以将会话数据保存在服务器上的文件,数据库或内存中,并为其分配ID.然后将此会话ID发送到客户端并通常存储在cookie中(尽管它们也可以嵌入到URL中).然后,对于每个请求,Web应用程序将读取并使用客户端的会话ID,以从会话数据存储在服务器上的任何位置加载会话数据.这样,客户端永远不会访问任何会话数据,也无法篡改它,但缺点是您必须通过恶意客户端使用陈旧的会话ID来防止会话劫持.这是当今大多数Web框架和应用程序使用的模型.

另一种方法是将会话数据完全存储在cookie内的客户端.这种方法的缺点是客户端可以看到和篡改数据,因此您必须注意正确签名和加密数据以防止篡改.这是有一个好的秘密密钥发挥作用的地方.好处是你也不必担心会话劫持.

Pylons使用Beaker会话,可以将其配置为完全存储会话数据 on the client side .这就是您需要密钥的原因.

CherryPy仅在服务器上存储会话数据,然后向用户发送带有会话ID的cookie,因此客户端永远不会看到会话数据并且无法篡改它.您可以将其配置为使用文件或仅将所有内容保存在内存中.您甚至可以挂钩并使用数据库存储会话数据.

就个人而言,我更喜欢CherryPy使用的方法,因为它与大多数网络使用的方法相同.它更容易保护,您可以轻松地与服务器上运行的其他应用程序共享会话数据,而无需担心加密或密钥.


以上就是本文的全部内容,希望本文的内容对大家的学习或者工作能带来一定的帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

数据科学入门

数据科学入门

[美] Joel Grus / 高蓉、韩波 / 人民邮电出版社 / 2016-3 / 69.00元

数据科学是一个蓬勃发展、前途无限的行业,有人将数据科学家称为“21世纪头号性感职业”。本书从零开始讲解数据科学工作,教授数据科学工作所必需的黑客技能,并带领读者熟悉数据科学的核心知识——数学和统计学。 作者选择了功能强大、简单易学的Python语言环境,亲手搭建工具和实现算法,并精心挑选了注释良好、简洁易读的实现范例。书中涵盖的所有代码和数据都可以在GitHub上下载。 通过阅读本书,......一起来看看 《数据科学入门》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

MD5 加密
MD5 加密

MD5 加密工具