曾经手的中间件的用户认证方式是:
重写org.apache.shiro.web.filter.authc.FormAuthenticationFilter的onLoginSuccess方法,在该方法中,UUID生成一串字符串,作为登录成功的凭证。token作为key,用户信息作为value,将该key/value对存入Redis的同时,将token放到响应头或者放到cookie中发送给客户端。登录以后,当请求需要登录认证的接口时,请求头中,都带上这个token,服务器验证token是否过期(通过token去redis中查询),没有过期才放行。
这种token机制除了多用了Redis服务,没什么不好。
如果采用jwt token,则可以省略Redis.