【Spring Security】 简介

Metadata

title: 【Spring Security】 简介
date: 2023-02-01 18:27
tags:
  - 行动阶段/完成
  - 主题场景/组件
  - 笔记空间/KnowladgeSpace/ProgramSpace/ModuleSpace
  - 细化主题/Module/SpringSecurity
categories:
  - SpringSecurity
keywords:
  - SpringSecurity
description: 【Spring Security】 简介

【Spring Security】 简介

Spring Security 是在 Apache 2.0 许可下发布的开源软件。

Spring Security 是一个安全框架,前身是 Acegi Security,能够为 Spring 企业应用系统提供声明式的安全访问控制。Spring Security 基于 Servlet 过滤器、IoC 和 AOP,为 Web 请求和方法调用提供身份确认和授权处理,还提供与其他库的集成以简化其使用,避免了代码耦合,减少了大量重复代码工作。

Spring Security 主要实现了 Authentication(认证,解决 who are you? ) 和 Access Control(访问控制,也就是 what are you allowed to do?,也称为 Authorization)。Spring Security 在架构上将认证与授权分离,并提供了扩展点。

认证:Spring Security 为身份验证提供了全面的支持。身份验证是我们验证尝试访问特定资源的人的身份的方式。验证用户身份的常用方法是要求用户输入用户名和密码。一旦执行身份验证,我们就知道身份并可以执行授权。简单来说就是系统认为用户是否能登录

授权:用户授权指的是验证某个用户是否有权限执行某个操作。在一个系统中,不同用户所具有的权限是不同的。比如对一个文件来说,有的用户只能进行读取,而有的用户可以进行修改。一般来说,系统会为不同的用户分配不同的角色,而每个角色则对应一系列的权限。简单来说就是系统判断用户是否有权限去做某些事情。