目录
1.3 websecurityconfigure配置文件重要性
2.2.3 spring容器配置applicationConfig文件
2.2.4 spring容器配置Servlet Context配置文件
2.3 spring security认证配置(里面具有拦截器功能)
2.3.1 *安全配置WebSecurityConfig配置文件***
2.3.1.1 webSecurityConfig的作用(具有拦截器的作用)
2.3.1.2 webSecurityConfig的代码实现
2.3.2 ****Spring Security初始化***
2.3.3 ****springsecurity默认的请求路径***
2.4.2 在安全配置类WebSecurityConfig.java中配置授权规则
一 spring security介绍
1.1 概述
spring security是一个封装比较完整安全的认证授权框架。是一个能够为基于Spring的企业应用系统提供声明式的安全访问控制解决方案的安全框架,在spring boot项目中加入spring security更是十分简单,使用Spring Security 减少了为企业系统安全控制编写大量重复代码的工作。
1.2 这里注意事项*
1.在WebConfig.java中添加默认请求根路径,跳转到/login,此url为spring security提供。这里的setViewName("redirect:/login"); 跳转到spring security自带的login.jsp页面,进行登录。

springsecurity提供的login页面:

1.3 websecurityconfigure配置文件重要性
见下文2.3章节部分
二 案例
2.1 springmvc基础配置
2.2 具体实操
2.2.1 工程结构

2.2.2 添加pom依赖
<!-- spring-security-->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.1.4.RELEASE</version>
</dependency>
<!-- security-config -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>5.1.4.RELEASE</version>
</dependency>
2.2.3 spring容器配置applicationConfig文件
/**
* @author Administrator
* @version 1.0
**/
@Configuration //相当于applicationContext.xml
@ComponentScan(basePackages = "com.ljf.spring.mvc.security"
//排除@controller注解标注的类,排除我们不希望spring容器加载的类。
,excludeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION,value = Controller.class)})
public class ApplicationConfig {
//在此配置除了Controller的其它bean,比如:数据库链接池、事务管理器、业务bean等。
}
2.2.4 spring容器配置Servlet Context配置文件
package com.ljf.spring.mvc.security.config;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.ComponentScan;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.FilterType;
import org.springframework.stereotype.Controller;
import org.springframework.web.servlet.config.annotation.EnableWebMvc;
import org.springframework.web.servlet.config.annotation.InterceptorRegistry;
import org.springframework.web.servlet.config.annotation.ViewControllerRegistry;
import org.springframework.web.servlet.config.annotation.WebMvcConfigurer;
import org.springframework.web.servlet.view.InternalResourceViewResolver;
/**
* @author Administrator
* @version 1.0
**/
@Configuration //就相当于springmvc.xml文件
@EnableWebMvc
@ComponentScan(basePackages = "com.ljf.spring.mvc.security"
,includeFilters = {@ComponentScan.Filter(type = FilterType.ANNOTATION,value = Controller.class)})
public class WebConfig implements WebMvcConfigurer {
//视频解析器
@Bean
public InternalResourceViewResolver viewResolver(){
InternalResourceViewResolver viewResolver = new InternalResourceViewResolver();
viewResolver.setPrefix("/WEB-INF/view/");
viewResolver.setSuffix(".jsp");
return viewResolver;
}
//

本文详细介绍了Spring Security在Spring Boot项目中的整合步骤和配置,包括设置默认登录页面、配置安全拦截规则、用户认证授权等功能。通过示例展示了如何创建用户、密码编码器以及安全拦截机制,并解释了Spring Security的授权配置,强调了授权规则的设置和测试过程。

677

被折叠的 条评论
为什么被折叠?



