学习Spring Security首先要清楚认证和授权这两个重要的概念。
-
认证(Authentication):Authentication确定谁在访问资源;当你访问绝大部分系统的时候,你需要提供用户名和密码,让系统确定你提供的用户名密码和他们存储的是否一致;若认证通过则可访问受保护的资源,不通过则不可以访问受保护的资源。
-
授权(Authoraztion):Authoraztion确定当前访问者是否有权限访问指定的受保护资源;指定的受保护资源需要指定的权限才能访问,若当前访问者拥有这个权限,他才可以访问指定的受保护资源。
1 Spring Security的应用
1.1 Spring Boot的自动配置
Spring Boot为我们提供了SecurityAutoConfiguration
自动配置,它导入了三个自动配置,并通过SecurityProperties
使用spring.security.*
来配置Spring Security:
SecurityAutoConfiguration
:SpringBootWebSecurityConfiguration
:提供默认的Web安全配置(DefaultConfigurerAdapter
继承WebSecurityConfigurerAdapter
),若我们自己继承了WebSecurityConfigurerAdap