Spring Boot 整合 Spring Security
时间: 2024-02-18 12:51:49 浏览: 135
Spring Boot整合Spring Security可以实现对应用程序的安全认证和授权功能。下面是一个简单的示例:
1. 添加Spring Security依赖:在pom.xml文件中添加以下依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
```
2. 创建一个配置类:创建一个继承自WebSecurityConfigurerAdapter的配置类,并重写configure方法来配置安全策略。以下是一个示例:
```java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/", "/home").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("user").password("password").roles("USER");
}
}
```
上述示例中的configure方法配置了对应用程序路径的访问权限,configureGlobal方法配置了一个简单的内存用户认证。
3. 创建登录页面:在src/main/resources/static目录下创建一个login.html文件作为登录页面。
4. 运行应用程序:启动Spring Boot应用程序,并访问相应的URL(例如,http://localhost:8080/login)试图访问受保护的资源。系统将会自动重定向到登录页面,输入用户名和密码后即可访问受保护的资源。
上述步骤是一个简单的Spring Boot整合Spring Security的示例。你可以根据自己的需求进行更复杂的配置和定制。
阅读全文