RESTful令牌和会话

时间:2014-08-24 09:30:56

标签: java web-services api rest

我想知道如何使用授权的RESTful服务器的最佳做法。

说在登录后服务器为我提供了一个令牌,然后对于每个请求,我也必须提供它。我的问题是:我应该在服务器的会话中保存此令牌吗?或者我应该针对每个请求对数据库进行身份验证?

2 个答案:

答案 0 :(得分:4)

有几种方法。您只能将其保留在内存中,但如果群集中有多个服务器,则必须确保对给定令牌的请求始终发送到同一服务器,或者在所有服务器之间分发令牌

您还可以对令牌数据进行加密签名,在令牌中包含数据和签名,并在每次请求时验证签名。通过这种方式,您可以确定令牌已经由您发出,并且您可以完全无国籍。

请注意,如果您已经使用HTTP会话,则令牌是多余的,因为会话机制已经使用cookie中的令牌来跟踪会话。

答案 1 :(得分:3)

使用会话cookie跟踪经过身份验证的会话,而不是每次都访问数据库。