API的安全客户端令牌身份验证

时间:2013-08-17 11:06:57

标签: api security http authentication ssl

我有一个移动iOS应用程序,我想要对RESTful API进行身份验证。 每个用户可能有多个设备链接到同一个帐户。

到目前为止,我想出了以下内容:

客户端

  • 让用户使用用户名/密码登录
  • 发送用户名/密码&唯一的设备ID到服务器
  • 从服务器获取authToken并将其设置在每个API调用的HTTP身份验证标头中
  • 注销时,删除authToken

服务器侧

  • API使用SSL
  • 用户拥有许多关联设备
  • 设备由唯一设备ID和authToken
  • 表示
  • 每次用户更改密码时,重新生成所有authTokens
  • 如果删除了设备,请删除该设备的authToken

这是一种访问API并手动添加/撤消设备的安全方法吗?

1 个答案:

答案 0 :(得分:0)

是的,这是一种相当标准的方法。 Google有a document that describes this approach(该文档的大部分内容都是为了将​​令牌从服务器提供给客户端,因此可能对您没有用处)。还有一些detailed description of bearer token authentication

您应该看看您正在编写服务器的应用程序框架是否已经支持像OAuth这样的身份验证机制,因此您不必自己编写。