这是一个带有登录屏幕的现有系统,现在我将一些服务公开为 REST 服务。我为此 Rest(jersey) 服务构建了一个身份验证令牌登录系统。用户发送用户名密码,然后服务器返回一个计算为的令牌;
sha1(username+password+currenttime(or any random number))
用户将使用此令牌登录应用程序以获取更多请求。服务器在数据库中保存一个带有时间戳和用户 ID 的令牌副本,如果时间戳有效,则登录该用户。
考虑到会用到HTTPS ,有几个问题;
我的设计中的一切看起来都好吗?(哈希的生成和我在数据库中保存的方式)在我看来,最薄弱的一点是我需要通过 POST 请求发送普通的用户名和密码,但由于它是 HTTPS,我想这不会是一个问题。
另一件事,对于第一个请求,因为它是一个现有系统,所以我的数据库中没有用户密码,但保留了它们的加盐哈希版本。我想给所有客户这个加盐算法来向我发送他们的密码哈希是不安全的,所以我比较哈希而不是密码。这有意义吗=