通常我可以在会话中存储用户信息,现在我想开发一个既有Android客户端又有浏览器客户端的应用程序。所以我想我可能需要一个RESTful服务器。但我在身份验证方面遇到了一些问题。有人建议我可以使用Token机制,但我不知道这方面的细节,也找不到很多有用的信息。
我有一些问题。
- 我应该在浏览器和Android客户端的哪里存储Token?我应该用饼干吗
- 如何生成Token
- 服务器如何验证Token?服务器应该存储Token吗
- 身份验证还有其他方法吗
我使用springmvc和hibernate。如果有人能给我一些建议,这将对我帮助很大。
一般的想法是,当用户登录(调用你的api的登录端点)时,你会生成一个随机令牌,保存在服务器中(与用户相关)并返回给调用者(android)。所有其他调用也将需要此代码,您将与保存的代码进行比较。您也可以在一段时间后让代码超时,并根据您的需要,使用预定义的密钥对其进行编码,以增加一点安全性。