首页 > 代码库 > springboot07-security
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
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。