01-Spring Security框架學習--入門(二)

markriver發表於2021-09-09

一、入門案例

Spring Security 自定義登入介面

透過之前的一節 01-Spring Security框架學習--入門(一)的簡單演示,Spring security 使用框架自帶的登入介面,下面的案例將使用自己定義的登入頁面。

基本步驟

  1. 新增如下頁面:

  • 登入介面 src/main/webapp/login.html

    html>登入

    自定義的登入介面

        
            使用者名稱: 
            密碼:     
                 
  • 登入結果頁面 src/main/webapp/login_error.html

    html>登入錯誤
        使用者名稱或密碼錯誤,無權訪問!
  1. 修改Spring-security.xml 配置
    src/main/resources/spring/spring-security.xml

    
    
      <!-- 設定不用不用登陸規則(注意:路徑前'/'符號不可省略) --&gt
      
      
      
      <!-- 頁面的連結規則 --&gt
      
        
        <!-- 開啟表單提交功能(注意:路徑前'/'符號不可省略)--&gt
        
        <!-- 關閉 csrf 攔截 --&gt
        
      
      <!-- 認證管理器 --&gt
      
        
          
            
          
        
      
      manager>  

執行效果

圖片描述

效果簡介

執行問題

  1. 如下錯誤:HTTP Status 403 - Invalid CSRF Token 'null' was found on the request parameter '_csrf' or header 'X-CSRF-TOKEN'.    

    圖片描述

    crsf導致訪問錯誤


    這是由於Spring security 預設開啟防範CSRF攻擊導致,目前demo演示關閉即可。

二、Spring security 的總結

  1. 透過路上的簡單的配置,Spring security 為我們將我們很多的事情:

  • 在你的應用中每個URL都要求認證

  • 為你生成一個登陸表單

  • 允許使用者在表單中提交 Username 使用者名稱為user 以及 Password 密碼為 password 來進行認證

  • 允許使用者登出

  • 防範CSRF攻擊

  • 防範Session Fixation

  • 整合Security Header

  1. spring security的基本原理

spring 透過servlet的攔截器``攔截HTTP請求,在這個過濾鏈的作用下使用者認證和授權。


圖片描述

基本原理流程

如果想深入瞭解原理流程

             




作者:weir_will
連結:

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/818/viewspace-2806585/,如需轉載,請註明出處,否則將追究法律責任。

相關文章