美文网首页
Shiro+SessionId构建token鉴权体系

Shiro+SessionId构建token鉴权体系

作者: 企业信息化架构 | 来源:发表于2018-10-03 13:47 被阅读772次

背景

随着社会的发展,现在前端展示的方式多样,由原本网页单一形式,到现在的网页、小程序、Android、IOS等多元化模式。由于前端展示的多元化,原有采用session有状态的认证方式已经无法满足需求,所以需要调整后台的技术框架,让系统能满足有状态认证和无状态token认证并存。

方案

后台的管理系统是采用码云上开源的renren-security系统,该系统采用的认证框架是Shiro。考虑系统采用原本的权限控制采用Session方式,整体风险大且时间周期长,所以整合考虑采用SessionId作为token的方式,进行无状态的token认证方式。
登录时,POST用户名与密码到/login进行登入,如果成功返回一个会话ID,以会话ID作为token,失败的话直接返回401错误。之后用户访问每一个需要权限的网址请求必须在header中添加Authorization字段,例如Authorization: token,token为密钥。后台会进行token的校验,如果有误会直接返回401。

Token验证

在login方法验证通过后,以SessionId作为token,通过json返回客户端。

Token校验流程

重写Sessionmanager的getSessionId方法,获取token作为SessionId,同时修改request的“REFERENCED_SESSION_ID”为token,因为token为验证通过的sessionId,所以此request也会采用验证通过的Session进行获取验证和权限。

流程

准备Maven文件

新建一个Maven工程,添加相关的依赖。

实现Realm

编写认证方法和授权方法。

重写SessionManager

重写继承DefaultWebSessionManager的SessionManager,修改getSessionId方法,通过获取的token作为SessionId。

配置Shiro

配置Realm和SessionManager,还有关于路径的拦截等配置。

整体配置可以参考:https://blog.csdn.net/qq_34996727/article/details/81133729
SessionManager可以参考:https://blog.csdn.net/u011456867/article/details/80484559

相关文章

  • Shiro+SessionId构建token鉴权体系

    背景 随着社会的发展,现在前端展示的方式多样,由原本网页单一形式,到现在的网页、小程序、Android、IOS等多...

  • 鉴权token和refresh_token

    每次访问鉴权使用token,token使用aes对称加密,鉴权时直接解密得到uid,无需访问数据库验证,鉴权tok...

  • Koa 使用 JWT 实现鉴权

    JWT 鉴权的优势 JWT (JSON Web Token) 是现今比较主流的的登录鉴权方式。token 类似一个...

  • JWT

    概述 JWT 基于 token 的鉴权机制,基于 token 的鉴权机制类似于 http 协议也是无状态的,它不需...

  • 什么是token?

    什么是token?   token就是令牌,前后端进行鉴权的一种有效形式,比传统的 session 鉴权更加方便,...

  • 鉴权和权限管理的探索

    传统鉴权方案是通过Session ID完成的,现在一般使用Token鉴权。 1.认证与鉴权 分布式session ...

  • token鉴权

    什么是token鉴权呢?token就是令牌的意思,举个生活中的例子:大家肯定都去过ktv,你在收银台交过钱后,一般...

  • 云调用,小程序鉴权-方案

    目录:一、无处不在的鉴权 现实生活中的身份鉴权方法 简单的密码鉴权体系二、鉴权优化 频繁的鉴权场景下的优化方案 第...

  • BATJ都会用到的接口鉴权cookie、session 和tok

    鉴权 鉴权是指验证用户是否拥有访问系统的权利—鉴定权限。 cookie、session和token 为什么会有co...

  • golang jwt鉴权分析

    技术栈 gin+jwt 鉴权流程:调用token生成方法GenerateToken生成token, 请求api...

网友评论

      本文标题:Shiro+SessionId构建token鉴权体系

      本文链接:https://www.haomeiwen.com/subject/qllaoftx.html