赞
踩
参考文章:Spring Boot框架整合Spring Security实现安全访问控制
SpringSecurity核心SpringSecurity核心组件_spring_security_context 线程_rw-just-go-forward的博客-CSDN博客SpringSecurity核心
Spring Security做JWT认证和授权--import
SpringBoot中使用Shiro和JWT做认证和鉴权--import
Spring Security的安全访问控制分为Authentication(认证)和Authorization(授权,也叫“访问控制”)。认证指的是用户登录的信息验证,判断你账号密码是否正确;授权指的是当用户访问一个页面时判断他有没有这个权限。
一般流程为:
- 1. 当用户登录时,前端将用户输入的用户名、密码信息传输到后台,后台用一个类对象将其封装起来,
- 通常使用的是UsernamePasswordAuthenticationToken这个类。
-
- 2. 程序负责验证这个类对象。验证方法是调用Service根据username从数据库中取用户信息到实体类的实例中,
- 比较两者的密码,如果密码正确就成功登陆,同时把包含着用户的用户名、密码、所具有的权限等信息的类对象
- 放到SecurityContextHolder(安全上下文容器,类似Session)中去。
-
- 3. 用户访问一个资源的时候,首先判断是否是受限资源。如果是的话还要判断当前是否未登录,
- 没有的话就跳到登录页面。
-
- 4. 如果用户已经登录,访问一个受限资源的时候,程序要根据url去数据库中取出该资源所对应的
- 所有可以访问的角色,然后拿着当前用户的所有角色一一对比,判断用户是否可以访问。
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。