发表于: 2020-09-24 23:42:49

1 1346


今天完成的事:

spring Security Demo

导包:

<dependency>
   <groupId>org.springframework.boot</groupId>
   <artifactId>spring-boot-starter-security</artifactId>
</dependency>
@EnableWebSecurity
public class SecurityConfig extends WebSecurityConfigurerAdapter {
//认证
   @Override
   protected void configure(HttpSecurity http) throws Exception {
//首页所有人都可以访问,功能只有对应权限的人才能访问。
       http.authorizeRequests()
.antMatchers("/").permitAll()
.antMatchers("/L1/**").hasRole("vip1")
.antMatchers("/L2/**").hasRole("vip2")
.antMatchers("/L3/**").hasRole("vip3");
       //没有权限会跳转到登录页
       http.formLogin()
.loginPage("/tologin")
.loginProcessingUrl("/login")
.usernameParameter("user")
.passwordParameter("pwd");
       //注销
       http.logout().logoutSuccessUrl("/index");
       http.rememberMe();
   }

//授权
   @Override
   protected void configure(AuthenticationManagerBuilder auth) throws Exception {
auth.inMemoryAuthentication().passwordEncoder(new BCryptPasswordEncoder())
.withUser("wyl").password(new BCryptPasswordEncoder().encode("123456")).roles("vip1", "vip2")
.and().withUser("root").password(new BCryptPasswordEncoder().encode("123456")).roles("vip1", "vip2", "vip3")
.and().withUser("guest").password(new BCryptPasswordEncoder().encode("123456")).roles("vip1");

   }
}

root 用户有全部权限,wyl有查看vip1,vip2的权限,guest只有vip1的权限,测试:

root:

wyl:

可以看到效果。



返回列表 返回列表
评论

    分享到