JWT

  • JSON Web Token,通过数字签名的方式,以 JSON 对象为载体,在不同的服务终端之间安全的传输信息
  • JWT 常用于授权认证,一旦用户登录,后续每个请求都将包含 JWT,系统在每次处理用户请求的之前,都要先进行 JWT 安全校验,通过之后再进行处理

结构

由 Header、Payload 通过 base64 编码拼接,之后通过 header 里面声明的加密方式,将编码后的结果加盐加密生成 signature,将三者拼接形成 token

  1. Header
    alt

  2. Payload
    alt

  3. signature
    alt




SpringSecurity

  • SpringSecurity 是 Spring 家族中的一个安全管理框架,相比与另外一个安全框架 shiro,它提供了更丰富的功能,社区资源也比 shiro 丰富
  • 一般来说,中大型的项目都是使用 SpringSecurity 来做安全框架。小项目使用 Shiro 的比较多,因为相比与 SpringSecurity,shiro 的上手更加的简单

认证与授权

  • 认证:验证当前访问系统的是不是本系统的用户,并且要确定具体哪个用户
  • 授权:经过认证后判断当前用户是否有权限进行某个操作



参考