Spring Security開發實踐

Spring Security 是 Spring 家族中用於提供認證、授權和攻擊防護功能的一套安全框架。它也是 Spring 應用在安全框架方面的公認標準。
Spring Security 安全框架適合爲 Spring Boot 項目提供安全保護,所以如果您是個 Spring Boot 項目的開發人員,且正在尋找一種可以和 Spring Boot 輕鬆集成的,用於認證和鑑權的框架時,可以優先考慮 Spring Security。
 
Spring Security 的核心特性包括:認證和授權、常規攻擊防範、與 Servlet 接口集成、與 Spring Boot 應用集成等。
認證和授權的目的是,讓系統知道使用者是誰(認證)?是什麼樣的身份?允許他做什麼?禁止他做什麼?通常的做法是要求用戶輸入自己的用戶名和密碼,來實現登錄和授權的過程。
 
本技術專欄提供了示例項目的源代碼(購買完整專欄可獲取),專欄中提供了下載鏈接:
 
 

專欄大綱

Spring Security 是 Spring 家族中規範化的安全框架。它幫助我們輕鬆地構建應用安全環境,可以快速地實現認證(Authentication)和權限(Authorization)管理,它幫助我們規範化開發過程,是一套完整、成熟、易用的開發框架。
 
Java 環境下有兩大安全框架:Spring Security 和 Apache Shiro。
和 Spring Security 一樣,Shiro 同樣隸屬於一個強大的軟件社區: Apache。二者的功能類似,都完成了認證和鑑權功能,都有超過十年的發展歷史。Shiro 是一個獨立的安全框架,Spring Security 則與 Spring 關聯緊密,所以在二者的選擇上,可以簡單的用如下原則區分:
如果我們開發 Spring Boot 項目,那優先建議使用 Spring Security 安全框架。如果我們開發其他類型的項目,那請使用 Shiro 作爲安全框架。
 
本技術專欄從零開始詳細介紹了Spring Security的工作原理和開發實踐過程,包括基於內存和數據庫的用戶認證、自定義用戶認證、基於URL地址和訪問級別的授權、密碼編碼、加密模塊、默認過濾器鏈、自定義過濾器、自定義認證和動態授權的開發實踐、自定義異常處理、單元測試、自定義登錄和登出頁面、同源策略(SOP)、跨站請求僞造(CSRF)、跨域資源共享(CORS)、CSRF攻擊防禦、前後端分離CORS跨域請求等等。
開發環境:Spring Boot 2.3.7.RELEASE + Spring Security 5.3.6.RELEASE
本技術專欄主要包含如下章節,並附帶有示例項目源碼:
  • 輕鬆創建Spring Security 入門應用
  • Spring Security應用請求流程、認證流程和認證方式
  • Spring Security 基於內存認證的開發實踐
  • Spring Security基於數據庫用戶存儲方案的開發實踐
  • 初步理解Spring Security 工作流程和過濾器機制
  • 理解Spring Security中的用戶對象
  • 理解Spring Security中的認證對象
  • 開發實踐:基於Spring Security 實現自定義用戶認證的詳細過程【1】
  • 開發實踐:基於Spring Security 實現自定義用戶認證的詳細過程【2】
  • 開發實踐:基於Spring Security 實現自定義用戶認證的詳細過程-註冊新用戶
  • Spring Security中PasswordEncoder 密碼校驗和密碼加密流程
  • Spring Security 中DelegatingPasswordEncoder 代理類簡介和使用
  • Spring Security中的加密模塊(Crypto)和使用入門
  • 輕鬆理解Spring Security中的授權、角色和權限
  • 實現Spring Security 基於URL地址級別的授權保護
  • 簡要分析Spring Security 的授權流程
  • 實現Spring Security基於方法級別的授權保護
  • 如何查看Spring Security 過濾器鏈中的過濾器?
  • 輕鬆實現Spring Security框架中自定義過濾器
  • 輕鬆實現自定義過濾器檢查請求頭(Request Header)信息
  • 開發實踐:基於Spring Security 實現可配置的動態授權-創建示例項目、表、模型和Repository
  • 開發實踐:基於Spring Security 實現可配置的動態授權-實現自定義授權接口
  • 開發實踐:基於Spring Security 實現可配置的動態授權- 自定義安全配置類
  • 開發實踐:基於Spring Security 實現可配置的動態授權- 測試效果
  • 開發實踐:Spring Security中的單元測試
  • 開發實踐:基於Spring Security實現自定義AuthenticationEntryPoint
  • 開發實踐:基於Spring Security實現自定義AccessDeniedHandler
  • 開發實踐:自定義Spring Security登錄和登出頁面
  • 同源策略(SOP)、跨站請求僞造(CSRF)攻擊和防禦
  • 開發實踐:基於Spring Security實現CSRF跨站攻擊防禦
  • 瞭解跨域資源共享(CORS)和請求流程
  • 開發實踐:Spring Boot 應用跨域解決方案
  • 開發實踐:在Spring Security應用項目中解決跨域問題


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章