是否使用加密令牌?

时间:2016-01-22 13:52:47

标签: ruby-on-rails authentication encryption token

对于基于令牌的API身份验证:建议的做法是什么:

  • 将令牌保存在加密或未加密的数据库中?
  • 用于身份验证:根据令牌查找用户(仅当令牌未加密存储在数据库中时才可用)或基于用户的电子邮件地址?

我发现几个源似乎存储了未加密的令牌,然后在身份验证中根据API请求收到的令牌找到用户。这对我来说似乎有点不安全,因为后端根据请求中包含的令牌搜索整个User表,而不管哪个用户有该令牌(所以有人可以尝试多个令牌)。与此同时,我不知道是否有必要加密令牌。

1 个答案:

答案 0 :(得分:1)

我将其视为密码 - 对其进行加密。

然后,当用户连接时,您查找指定的用户,加密提供的令牌并比较该用户的结果。

主要原因是,当你被黑客攻击时,你不必在恢复时立即重置所有被攻陷的令牌,你应该有更多的时间......因为黑客赢了“可以访问他们的令牌..如果你的令牌被腌制,可能永远不会。

并非我主张不重置令牌!只是,在当下的热度中,这是一个不那么直接的问题。