会话cookie是否足以进行身份​​验证?

我试图为使用Happstack框架编写的Web应用程序实现简单的基于密码的身份验证。 我的用户提供了一个ID和密码,我使用bcrypt进行散列并通过数据库进行检查。 如果散列密码位于该ID的数据库中,则用户因此被认证。

一旦我认证了好用户,然后我想发出一个会话cookie,标记该用户在会话期间已经登录。 (我不是试图实现“持久性”,“记住我”类型的cookie;我只是想知道用户是否登录了会话。)

会话cookie的存在是否足以对用户进行身份验证? 如果不是,还需要其他什么信息? 我可以将cookie的(散列)值存储在我的数据库中,但在这一点上,我不明白我会做什么与持久登录cookie有很大不同。

总之, 我有可能使用会话cookie来识别经过身份验证的用户 ,如果是,应该如何完成?

(我已经能够了解如何以及为什么要将会话cookie标记为“安全”和“仅限HTTP”,但我无法弄清楚该怎么处理这个问题!)


您可以使用happstack-authenticate作为密码登录的现有解决方案。 如果你仍然想要推出你自己的产品,但是你需要happstack-clientsession软件包用于用户无法读取或写入的会话cookie。 标记为“安全”的普通cookie仅意味着它只能通过HTTPS工作,但用户仍然可以读取和写入cookie。 通过clientsession,cookie将被服务器端密钥加密。 你可以使用clientsession用于“记住我”和会话登录; 它只是取决于你设置sessionCookieLife 。 如果您使用mkSessionConf ,默认情况下Session是您想要的。

链接地址: http://www.djcxy.com/p/23663.html

上一篇: Can a session cookie be sufficient for authentication?

下一篇: Is it really dangerous to save hashed password in cookies?