我已经开始设计一个RESTful API,并且正在考虑如何处理身份验证。我想使用某种身份验证令牌,但无法使用类似的基础架构的OAuth,因此我必须自己处理它。在RESTful API中存储身份验证令牌的位置
一个对这个API的要求是它必须具有良好的性能,足以处理请求的高容量才会有规模的需要;我关心的是如何在每个请求上尽可能少地验证令牌(完整性,到期时间,IP地址等)所需的时间。
我想令牌应该某种哈希值,而不是包含用户信息的加密字符串,因为解密时间将是沉重的。
我读过我可以将令牌存储在内存散列表中,其中的关键是令牌,值是处理请求所需的用户信息,但是如何在集群环境中完成此项工作哪里会有每个“节点”的哈希表?
我应该把令牌上的数据库表的命中DB每次也可手动处理过期的门票保留?
也许它不是一个问题是重要的,但我使用Spring MVC中的问题的REST API。
在此先感谢。
[REST API认证令牌]的可能重复(http://stackoverflow.com/questions/7919533/rest-api-authentication-tokens) – mayabelle
@mayabelle感谢您的反馈。我不认为这篇文章涵盖了我的需求。我的问题是:如果我使用散列表或类似(我可能会使用Google Guava定时缓存),我如何在NLB环境中共享缓存?每次我必须检查代币还是有更好的方法时,我是否应该使用数据库来存储代币并在数据库中进行搜索? – Nicola