iPhone Web服务身份验证和访问令牌

时间:2014-02-13 09:51:38

标签: php android iphone web-services restful-authentication

我有一个iPhone / Android原生应用。它使用PHP Web服务(RESTful)。如何为我的Web服务添加安全身份验证系统?有些人建议使用访问令牌。如何生成访问令牌以及如何管理它们? 我的理解如下:

1)在应用程序中,请求Web服务验证用户名和密码。

2)在Web服务(服务器上)中,创建一个唯一且安全的随机密钥,将其作为访问令牌存储在MySQL数据库中,并将其返回给Web服务请求。

3)在应用程序中,存储访问令牌并使用安全的Web服务请求发送它。

4)安全Web服务在完成请求之前检查请求是否包含有效的访问令牌。

上述步骤是否正确?如果是,那么如何使访问令牌到期?我应该使用cron作业(计划任务)吗?请建议一个更好的方法。任何帮助将受到高度赞赏。

1 个答案:

答案 0 :(得分:5)

您的上述步骤有效。在这里您可以做什么来使访问令牌到期:

  1. 当用户按下应用程序中的“注销”按钮时,“注销”按钮将调用Web服务以删除访问令牌
  2. 您可以将会话超时设置为X小时。在服务器上X小时后调用调度程序以删除打开的访问令牌。
  3. 当相同用户再次登录时更新访问令牌密钥而不注销。