springboot07-security
Posted @yang
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了springboot07-security相关的知识,希望对你有一定的参考价值。
1.pom中添加thymeleaf和security依赖
<dependencies> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter</artifactId> </dependency> <!--测试--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-test</artifactId> <scope>test</scope> </dependency> <!--mvc--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-web</artifactId> </dependency> <!--thymeleaf模板--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-thymeleaf</artifactId> </dependency> <!--权限--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-security</artifactId> </dependency> </dependencies>
2.配置WebSecurityConfig
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Configuration; import org.springframework.security.config.annotation.authentication.builders.AuthenticationManagerBuilder; 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; /** * WebSecurityConfig类描述: * * @author yangzhenlong * @since 2017/2/22 */ @Configuration @EnableWebSecurity public class WebSecurityConfig extends WebSecurityConfigurerAdapter{ @Override protected void configure(HttpSecurity http) throws Exception { http.authorizeRequests() .antMatchers("/", "/index").permitAll() .anyRequest().authenticated() .and() .formLogin().loginPage("/login").permitAll() .and() .logout().permitAll(); } /** * 在内存中创建了一个用户,该用户的名称为admin,密码为admin,用户角色为USER * @param builder * @throws Exception */ @Autowired public void createUser(AuthenticationManagerBuilder builder) throws Exception { builder .inMemoryAuthentication() .withUser("admin") .password("admin") .roles("USER"); } }
3.写自己的Controller
@Controller public class MainController { @RequestMapping("/") public String index(){ return "index"; } @RequestMapping("/index") public String index2(){ return "index"; } @RequestMapping("/hello") public String hello(){ return "hello"; } @RequestMapping("/login") public String login(){ return "login"; } }
4.启动springboot,访问http://localhost:8080/
如果没有登录,访问/hello时会自动跳转到/login
用我们内存中创建的 admin/admin登录
点击注销,跳转到/login
以上是关于springboot07-security的主要内容,如果未能解决你的问题,请参考以下文章
全栈编程系列SpringBoot整合Shiro(含KickoutSessionControlFilter并发在线人数控制以及不生效问题配置启动异常No SecurityManager...)(代码片段
SpringBoot中表单提交报错“Content type ‘application/x-www-form-urlencoded;charset=UTF-8‘ not supported“(代码片段
Spring boot:thymeleaf 没有正确渲染片段