我有一个要向 RESTful API 进行身份验证的移动 iOS 应用程序。每个用户都可能有多个设备链接到同一个帐户。
到目前为止,我想出了以下内容:
客户端
- 让用户使用用户名/密码登录
- 将用户名/密码和唯一设备 ID 发送到服务器
- 从服务器获取 authToken 并将其设置在每个 API 调用的 HTTP Authentication 标头中
- 注销时,删除 authToken
服务器端
- API 使用 SSL
- 用户有许多关联设备
- 设备由唯一的设备 id 和 authToken 表示
- 每次用户更改密码时,重新生成所有 authTokens
- 如果设备被移除,则删除该设备的 authToken
这会是访问 API 和手动添加/撤销设备的安全方法吗?