SpringSecurity6的配置使用
Spring Security 6 的配置可以通过 Java 配置类来完成。以下是一个简单的配置示例,它创建了一个简单的安全配置,只允许对 /admin
路径进行保护,并且只有拥有 ROLE_ADMIN
角色的用户可以访问。
import org.springframework.security.config.annotation.web.builders.HttpSecurity;
import org.springframework.security.config.annotation.web.configuration.EnableWebSecurity;
import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
@Override
protected void configure(HttpSecurity http) throws Exception {
http
.authorizeRequests()
.antMatchers("/admin").hasRole("ADMIN")
.anyRequest().permitAll()
.and()
.formLogin()
.and()
.csrf().disable(); // 为了简单起见,禁用了CSRF保护
}
}
在这个配置中,我们定义了一个 SecurityConfig
类,它继承自 WebSecurityConfigurerAdapter
。在 configure
方法中,我们使用 authorizeRequests()
来定义请求的授权规则,使用 .antMatchers("/admin").hasRole("ADMIN")
表示对 /admin
路径进行保护,只有拥有 ROLE_ADMIN
角色的用户可以访问。
此外,我们还启用了基于表单的登录,并且禁用了跨站请求伪造(CSRF)保护,这是为了简化配置和教学目的。在实际应用中,应该根据具体需求启用这些保护措施。
评论已关闭