登录令牌系统

时间:2010-06-28 09:13:36

标签: sql-server asp-classic

我目前正在创建一个非常基本的DBMS软件 - 但我希望用户不必每次都输入他们的详细信息。相反,我希望他们点击一个控制面板链接,直接记录它们。

到目前为止,我的解决方案是一个令牌系统,数据库中有一个表,其中包含该用户的登录详细信息,并附带一个tokenString - 用户只需转到将tokenString作为post变量传递的页面,然后记录它们in。

这是个好主意吗?

非常感谢, J哈利

2 个答案:

答案 0 :(得分:1)

它并不完全安全,但您正在进行易用性权衡。因此,如果您显示链接的页面在每次加载时更改每个人登录的令牌(并使令牌在一段短时间后过期),您将阻止该链接进入野外或有人黑客入侵他们发送电子邮件并获取旧的登录链接。

答案 1 :(得分:0)

我知道这已经超过9岁了,但是您听说过“ Hardened Stateless Session Cookies”吗?

  

Fu等。 [无状态会话cookie的]方案具有一个属性,即可以读取数据库中存储的加密密钥的攻击者可以创建欺骗的cookie。   [...]   在安全工程中,最好的做法是在设计系统时考虑到尽可能广泛的攻击者能力。因此,我设计了一种Cookie方案,可以完成Fu等人的全部工作。该设计确实可以做到,但是如果攻击者对身份验证数据库具有读访问权限并且知道cookie身份验证密钥,则还可以保留其某些安全属性。我在2008年安全协议研讨会上发表了关于该主题的论文-强化的无状态会话Cookie。

     

我的方案的诀窍是将用户密码的哈希存储在cookie中,并将其哈希存储在身份验证数据库中。这意味着服务器可以验证Cookie,但身份验证数据库所包含的信息不足以创建假Cookie。因此,具有数据库访问权限的攻击者仍然需要知道用户的密码才能登录,并且该密码没有存储。还有一些其他的微妙之处可以抵抗不同的攻击,本文对此进行了描述。