Ser*_*rov 6 authentication json ios jwt
我正在学习使用JSON Web令牌进行基于令牌的身份验证,以下是我现在看到的用于移动应用程序的方法,例如使用Swift构建的应用程序:
我可以使用用户输入在app中创建一个对象,比如
{username:"patrickbateman",密码:"ismyknifesharp",角色:"常规",...}
然后我可以用它从库中生成一个JWT令牌.
/api/contacts/list.或者我是否必须发送登录名/密码进行身份验证?以下是我的结论:
这些结论是否正确?检查客户端发送的令牌的方法是什么?
我的意见:
我们不应该在客户端上保留用户密码。客户端在登录/登录时应将密码发布到服务器,请勿将其保存在客户端中的任何位置。要求应为https,密码不应加密。我们稍后将在服务器端对密码进行加密。
token用户成功登录后,服务器将为此用户生成一个。在token将包含在自身的过期日期。我们将使用令牌来验证服务器的权限。
我认为对API的每个请求都应提供令牌,但注册/登录/忘记密码请求除外。
令牌应放在请求的标头中。
服务器应允许客户端使用旧令牌请求新令牌(可能已过期)
以及“如何从客户端服务器检查令牌?”的答案。有很多方法可以做到这一点。下面的方法是我当前的方法:
服务器端生成一个令牌,该令牌是user info使用HMAC或RSA算法的加密字符串(例如,令牌过期时间,用户ID,用户角色...)和密码(仅保留在服务器端)。当用户提交时token,服务器可以解密并获取user info过期时间,而无需从数据库中查询。
无论如何,这个问题与Swift标签无关。
| 归档时间: |
|
| 查看次数: |
3652 次 |
| 最近记录: |