标签: python google-app-engine session
我有一个名为edit的用例,因为注册后似乎需要一个会话,并且不需要保留OpenID / OAuth帐户。所以我推出了自己的身份验证系统med SHA1,可以检查密码,现在我想知道我是否可以实现编辑文章的功能,而无需自带会话对象。是否可以使用以某种方式到期的令牌?用户需要“登录”,但我必须实现的是启用编辑对象,因为用户只需发送电子邮件即可登录,我认为登录可以使用会话令牌完成。感谢
答案 0 :(得分:1)
您想要的是Beaker等库所谓的“基于cookie的会话”。理想情况下,您应该只使用Beaker或其他提供此类功能的库,但无论如何这里都是他们工作方式的缩减:
会话数据(可能只是用户标识符,或表示他们有权限的标志)存储在常规客户端cookie中。它可选择使用密钥加密,并与使用不同密钥生成的HMAC一起存储。可选加密可防止用户读取数据,HMAC确保无法修改数据。
作为旁注,您说“不需要注册并保留OpenID帐户”,但随后使用SHA1和密码谈论您自己的身份验证。请记住:正确获取身份验证可能会非常棘手,并且很少有用户希望使用现有帐户登录时使用自己的密码注册其他帐户。