通过客户端进行RESTful API授权

时间:2013-09-28 09:50:23

标签: api rest authorization

我目前正在编写API来维护我的网络APP。 APP非常面向客户端,在前端有javascript处理路由和呈现等。为了提高可伸缩性,API是一个完全独立的资源。有了这个设置,我需要从前端不断调用API来接收不同类型的数据。

API公开的某些服务只能由授权用户访问。因此,每当用户登录时,他们都是授权服务器端,并且创建access_token,应该通过HTTP Auth.标头或作为查询字符串传递给受保护服务的每个请求。我担心的是自动化授权请求并避免损害API的“RESTfulness”,我需要将access_token短期存储在客户端缓存中,并作为返回用户的cookie。

我的问题是,以这种方式授权是否有意义?我觉得我不需要在这个开发阶段使用oauth,因为API本身只会使用API​​。此外,在客户端缓存或cookie中存储“长期存在”令牌以保持登录状态是安全的吗?

1 个答案:

答案 0 :(得分:2)

实际上你要求的大部分答案已经在你所做的解决方案中了,首先让我说,是的,为用户使用cookie是好的,这样你就不必再次进行身份验证服务了。再次降低了服务器的负载,此外,由于你已经做到这一点,我相信你已经知道你只需要进行一次身份验证,服务器将以你的方式识别用户,其余的请求主要是针对此经过身份验证的用户的api请求。 我更喜欢一个简短的生活cookie,或者让我说,我更喜欢这个问题的一个非常短的生活cookie,这个cookie应该根据客户端与服务器的交互时间超时,这样你就可以确保用户关闭了一段时间,从服务器清除会话是安全的,并且您可以维护某种安全的环境。 我希望我回答你的问题,如果我误解了你,请发表评论。

相关问题