新版spring security6配置
时间: 2023-08-11 12:08:49 浏览: 167
对于Spring Security 6,以下是一个基本的配置示例:
1. 添加Spring Security依赖:
```xml
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-security</artifactId>
</dependency>
```
2. 创建一个配置类,继承自`WebSecurityConfigurerAdapter`:
```java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/public").permitAll() // 针对公开访问的URL
.anyRequest().authenticated() // 其他URL需要认证
.and()
.formLogin() // 配置表单登录
.loginPage("/login") // 登录页面的URL
.permitAll()
.and()
.logout() // 配置退出登录
.logoutUrl("/logout") // 退出登录URL
.permitAll();
}
@Override
protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("user").password("{noop}password").roles("USER"); // 在内存中配置用户名、密码和角色
}
}
```
这是一个简单的配置,其中:
- `/public`是一个公开访问的URL,不需要认证即可访问
- `/login`是登录页面的URL
- `/logout`是退出登录的URL
- `user`是一个在内存中配置的用户名,密码为`password`,拥有`USER`角色
你可以根据自己的需求进行更详细的配置。注意,这只是一个示例,实际应用中可能需要更复杂的配置。
阅读全文