springsecurity6配置
时间: 2023-11-25 16:52:26 浏览: 123
Spring Security 配置
很抱歉,目前Spring Security的最新版本是5.5.1,还没有发布6.x版本。不过,我可以为您提供Spring Security 5.x的配置方法。
在Spring Security 5.x中,您可以使用基于Java配置的方式来配置安全性。以下是一个简单的示例:
1.添加Maven依赖:
```xml
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.5.1</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>5.5.1</version>
</dependency>
```
2.创建一个继承自WebSecurityConfigurerAdapter的配置类:
```java
@Configuration
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/public/**").permitAll()
.anyRequest().authenticated()
.and()
.formLogin()
.loginPage("/login")
.permitAll()
.and()
.logout()
.permitAll();
}
@Autowired
public void configureGlobal(AuthenticationManagerBuilder auth) throws Exception {
auth
.inMemoryAuthentication()
.withUser("user").password("{noop}password").roles("USER");
}
}
```
3.在上面的配置类中,我们覆盖了configure(HttpSecurity http)方法,以配置HTTP安全性。在这个例子中,我们允许所有人访问/public/**,但是需要身份验证才能访问其他所有页面。我们还配置了一个自定义的登录页面和一个允许所有人注销的端点。
4.我们还覆盖了configureGlobal(AuthenticationManagerBuilder auth)方法,以配置身份验证。在这个例子中,我们使用了一个内存中的用户存储,用户名为"user",密码为"password",角色为"USER"。
阅读全文