广州知名网站建设哪家公司好,长春建站服务,广东网站建设模版,江苏网站建设简介模板Spring Boot的Security安全控制
在Web项目开发中#xff0c;安全控制是非常重要的#xff0c;不同的人配置不同的权限#xff0c;这样的系统才安全。最常见的权限框架有Shiro和Spring Security。Shiro偏向于权限控制#xff0c;而Spring Security能实现权限控制和安全控制…Spring Boot的Security安全控制
在Web项目开发中安全控制是非常重要的不同的人配置不同的权限这样的系统才安全。最常见的权限框架有Shiro和Spring Security。Shiro偏向于权限控制而Spring Security能实现权限控制和安全控制是一个非常全面的安全框架在项目开发中有非常广泛的用途。本章重点介绍SpringSecurity框架的相关知识。 认识Spring Security
Spring Security是一个为Spring企业应用系统提供声明式安全访问控制解决方案的安全框架它是由Spring团队提供的。Spring Security提供一组可以在Spring应用上下文中配置的Bean能充分地利用Spring的IoC、DI和AOP的功能为项目提供声明式安全访问控制功能减少因安全控制而需要编写大量重复代码的工作从而提升项目代码的质量。
Spring Security框架有以下4大特性
全面且可扩展地支持身份验证和授权
防御会话固定、单机劫持和跨站请求伪造等攻击
支持Servlet API集成
支持与Spring Web MVC集成。
Spring Security框架支持以下两种Web应用的安全认证。
1. 用户认证Authentication
用户认证指的是验证某个用户是否为系统的合法用户确认用户能否访问该系统。用户认证一般要求用户提供用户名、密码和验证码。SpringSecurity通过校验用户名、密码和验证码来完成认证的过程。
2. 用户授权Authorization
用户授权指的是验证来自Web的某个用户是否有权限执行某个操作。在一个完整的系统中不同级别的用户具有不同的权限。例如对于一个文件来说有的用户只能读取而有的用户可以修改和删除。一般而言系统中的权限模块会为不同的用户分配不同的角色且每个角色有不同的权限每个用户都有不同的角色。
Spring Security的执行流程如下首先用户在登录时输入登录信息登录验证器会完成登录认证并将当前用户的登录认证信息存储到请求上下文中再调用其他业务如访问接口和调用方法时可以随时从上下文中获取用户的登录信息和用户的基本信息再根据认证信息获取权限信息通过权限信息和特定的授权策略决定是否授权从而达到认证和授权的目的。