【发布时间】:2015-03-08 03:36:37
【问题描述】:
在一个非常基本的令牌认证中,登录过程只是提供凭据并获取令牌。使用 RESTful API,令牌包含在任何 API 调用的标头中,以暗示用户已登录。
我的问题是,注销过程是什么样的?
- 在服务器端删除令牌?如果用户要退出网络但想在移动应用中保持登录状态怎么办?
- 从客户端删除令牌?服务器不应该强制执行吗?
- 服务器应该如何使令牌失效?
注销机制是如何实现的?
【问题讨论】:
标签: rest authentication token
在一个非常基本的令牌认证中,登录过程只是提供凭据并获取令牌。使用 RESTful API,令牌包含在任何 API 调用的标头中,以暗示用户已登录。
我的问题是,注销过程是什么样的?
注销机制是如何实现的?
【问题讨论】:
标签: rest authentication token
我认为注销操作只是使服务器端的令牌无效(在您的数据库中删除它,将过期标志设置为 false,...)。如果您想支持多种 REST 客户端,您应该能够指定要为哪个设备获取安全令牌。在这种情况下,您将能够分别使它们无效。
要提供设备类型,您可以利用标头user-agent 或提供您自己的标头。
也许此链接可以帮助您设计令牌管理:http://templth.wordpress.com/2015/01/05/implementing-authentication-with-tokens-for-restful-applications/。
您谈到了网络模式。对于这个用例(这有点特殊,因为浏览器隐含地为您保存令牌),我想您利用 cookie。所以是的,对于这样的特定用例,相应的 cookie 也必须失效。
希望对您有所帮助。 蒂埃里
【讨论】: