Spring Security充分利用了过滤器,可以把它理解成类似SpringMvc拦截器的一个安全检测,主要分为两个部分:“认证”,“授权”,“攻击防护”。下面就先通过代码及结果简单认识一下Spring Security。
1.导入依赖
<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency>
2.编写一个controller(我们看一下使用Spring Security以后和之前有什么区别)
运行一下,并且访问此接口,看一下结果
结果并没有得到预期的“search”,而是将我们的接口转到了这个登录界面,这就是Spring Security起效了,没有用户名密码是不能直接访问资源的,下面再改造一下代码,完成一个简单的资源安全认证。
3.再创建一个controller并声明两个接口
4.定义一个配置类,定义认证规则
WebSecurityConfigurerAdapter被横线划到,并不是不可以使用,只是idea现在的版本不建议使用但是你可以使用。这里我们定义/user可以访问资源。
5.配置yml,定义用户名和密码
6.准备就绪,现在启动一下,分别访问两个接口,看看结果如何。
先访问/index,依旧需要安全认证,需要我们输入用户名及密码才可以访问资源。
再来访问一下/user,无需密码直接访问到了资源。