码迷,mamicode.com
首页 > 其他好文 > 详细

013 个性化用户认证流程

时间:2018-10-05 16:02:34      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:流程   authorize   ring   username   csrf   表单   col   exce   package   

一:任务

1.任务

  自定义登录页面

  自定义登录成功处理

  自定义登录失败处理

 

二:自定义登录页面

1.说明

  在security中,默认的登录处理是

  技术分享图片

 

2.BrowserSecurityConfig

  这里从新定义登录的页面,与登录方法

 1 package com.cao.security.browser;
 2 
 3 import org.springframework.context.annotation.Bean;
 4 import org.springframework.context.annotation.Configuration;
 5 import org.springframework.security.config.annotation.web.builders.HttpSecurity;
 6 import org.springframework.security.config.annotation.web.configuration.WebSecurityConfigurerAdapter;
 7 import org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder;
 8 import org.springframework.security.crypto.password.PasswordEncoder;
 9 /**
10  * 覆盖掉security原有的配置
11  * @author dell
12  *
13  */
14 @Configuration
15 public class BrowserSecurityConfig extends WebSecurityConfigurerAdapter{
16     @Override
17     protected void configure(HttpSecurity http) throws Exception {
18         //表单登陆的一个安全认证环境
19         http.formLogin()
20             .loginPage("/index.html")
21             .loginProcessingUrl("/authentication/form")
22 //        http.httpBasic()
23             .and()
24             .authorizeRequests()    //请求授权
25             .antMatchers("/index.html").permitAll()  //这个url不需要认证
26             .anyRequest()            //任何请求
27             .authenticated()         //都需要认证
28             .and()
29             .csrf().disable();      //去掉csrf的防护
30         
31     }
32     
33     @Bean
34     public PasswordEncoder passwordEncoder() {
35         return new BCryptPasswordEncoder();
36     }
37 }

 

3.index.htnl

 1 <!DOCTYPE html>
 2 <html>
 3 <head>
 4 <meta charset="UTF-8">
 5 <title>登录</title>
 6 </head>
 7 <body>
 8     <h2>标准登录页面</h2>
 9     <h3>表单登录</h3>
10     <form action="/authentication/form" method="post">
11         <table>
12             <tr>
13                 <td>用户名</td>
14                 <td><input type="text" name="username"></td>
15             </tr>
16             <tr>
17                 <td>密码</td>
18                 <td><input type="password" name="password"></td>
19             </tr>
20             <tr>
21                 <td colspan="2"><button type="submit">登录</button></td>
22             </tr>
23         </table>
24     </form>
25 </body>
26 </html>

 

4.登录界面

  技术分享图片

 

三:

  

 

013 个性化用户认证流程

标签:流程   authorize   ring   username   csrf   表单   col   exce   package   

原文地址:https://www.cnblogs.com/juncaoit/p/9744781.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!