zope基于会话的auth-tkt认证
plone.session的Python项目详细描述
概述
plone.session 为zope站点实现安全会话管理。
在其默认配置中,plone.session使用 hmac sha-256 安全加密哈希对会话进行身份验证。 散列是使用用户id和存储在pas插件中的秘密生成的。 否则,cookie格式与apache的 mod_auth_tkt 格式相同。 对于使用原始mod_auth_tkt或其他兼容实现的单点登录,请将 mod_auth_tkt 属性设置为true。 这将调用基于md5的双哈希方案。 您需要在所有服务器上使用相同的密钥。
与其他会话管理系统相比,这有几个优点:
- 密码不会在每次请求时都以cookie的形式发送到服务器,这是由cookie auth helper完成的
- 它不需要为会话编写任何zodb,正如 会话崩溃程序所需要的那样。 这使得它可以很好地伸缩。
- 它允许您通过更新密钥使所有现有的用户身份验证cookie无效。
- Cookie仅在Timeout属性指定的时间段内有效。
这种方法有一些缺点:
- 如果用户的密码被更改或禁用,会话标识符将继续工作,很难锁定单个用户。
- 用户必须启用cookies。
会话cookie用于跟踪会话; 这意味着,只要用户保持浏览器打开(并且没有显式注销),会话将保持打开状态,直到达到超时限制。 这可以通过将插件的 timeout 属性设置为登录后cookie应保持有效的秒数来更改。
plone.session 不允许为您的站点设置TLS(也称为https)。
tkt auth.py 实现核心的mod_auth_tkt功能。 它是自包含的,可能对其他框架有用。