2011-04-21 72 views
0

我有一个叫做编辑的用例,因为注册并且不需要保留OpenID/OAuth帐户,所以似乎需要会话。所以我推出了我自己的身份验证系统med SHA1,它可以检查密码,现在我想知道是否可以实现编辑文章的功能,而无需引入自己的会话对象。它可以通过某种方式过期的令牌来完成吗?用户需要“登录”,但我必须实现的是启用编辑对象,因为用户可以通过发送电子邮件来登录,我认为登录可以通过会话令牌来完成。谢谢我可以使用会话令牌代替会话吗?

回答

1

你想要什么被库称为“基于cookie的会话”,如Beaker。理想情况下,您应该简单地使用Beaker或另一个提供此类功能的库,但无论如何,这里都是关于它们如何工作的低谷:

会话数据(可能只是一个用户标识符或表示他们有权限的标志)存储在一个常规的客户端cookie中。它可以选择使用密钥加密,并且它与HMAC一起存储,使用不同密钥生成。可选的加密功能可防止用户读取数据,而HMAC可确保他们无法修改数据。

作为旁注,你说“注册并保留一个OpenID帐户不是必需的”,但是随后谈谈你自己使用SHA1和密码进行身份验证。请注意:正确地进行身份验证可能会非常棘手,而且很少有用户希望在使用现有帐户登录时使用自己的密码注册另一个帐户。

+0

非常有趣。我听说过另一个我不能相信的故事,那就是当我认为许多开发人员和用户同意OpenID非常方便时,自己的身份验证更可取。 – 2011-04-23 21:25:52

相关问题