專欄“殺青”丨千鋒一一哥Spring Security系列教程總結來咯!

千鋒武漢發表於2021-11-03

內容回顧

截止到本篇文章, 一一哥就 帶各位詳細地學完了SpringSecurity中的各個核心內容,並結合原始碼帶大家研讀了SpringSecurity的底層設計。如果你認真地看完了我這個系列的每一篇文章,並跟著每篇教程中的程式碼編寫了對應的案例,現在應該就可以達到從一開始對SpringSecurity的懵懂無知,到今天的熟練使用了。

最後  壹哥  再把整個系列的內容給各位梳理一下,方便各位複習掌握,我在這裡做了一個SpringSecurity核心內容的思維導圖,我們們一起看看吧。

 

1. SpringSecurity簡介

透過本小節,我們瞭解到了SpringSecurity的基本概念、作用,以及與經典框架Shiro的區別,從中我們知道了SpringSecurity與Shiro的核心都是負責認證與授權,並且大家要知道認證與授權的含義及區別。

2. 初識SpringSecurity

然後我們透過一個案例,學習瞭如何在SpringBoot環境中利用SpringSecurity保護專案安全,並且瞭解到了SpringSecurity的基本使用。

3. 3種認證方式

SpringSecurity提供了3種安全認證方式,即基本認證、表單認證、摘要認證,其中表單認證用的比較多,請各位掌握表單認證的基本用法及底層原理。

因為目前開發基本都遵循前後端分離的開發模式,所以我們現在必須掌握前後端分離時的認證處理方案,主要是基於JSON進行認證資訊的傳遞,包括認證成功、認證失敗時的處理策略。

4. 2種授權方案

我們知道,SpringSecurity的核心功能包括認證和授權,其中授權的實現方案有2種,即基於記憶體模式的授權實現方案與基於資料庫模式的授權實現方案,我們開發時主要是基於資料庫模式來實現授權,這一章節也是我們必須重點掌握的內容。

5. SpringSecurity核心原始碼分析

我們開發時除了掌握必須的使用方法之外,還應該掌握SpringSecurity的核心原始碼,對SpringSecurity的底層認證、授權等流程原理有清晰的認識,做到知其然,還要知其所以然。

6. 實現圖形驗證碼

在掌握了基本的認證授權基礎之上,我們就可以進行一定程度的自定義開發,透過本章節就可以實現新增自定義的登入圖形驗證碼,這裡我們可以學習到2種新增驗證碼的方式,基於自定義過濾器和基於認證提供器來實現。

7. 實現自動登入與登出登入

利用SpringSecurity也可以很容易的實現自動登入與登出登入,另外我們還要掌握自動登入的實現原理。

8. 會話管理

透過本章節,我們主要是學習了會話的概念、HTTP協議、會話存在的問題,還有就是針對會話的各種攻擊方式及攔截手段。另外本章節中,最重要的是掌握針對會話過期的處理策略,掌握會話併發處理方案和實現叢集會話。

9. 密碼加密方案

本章節中,我們主要是掌握SpringSecurity中提供的各種密碼加密實現方案,以及密碼加密的底層實現原理。

10. 4種許可權控制方式

在本章節中,我給大家介紹了4種許可權控制方式,常用的基於註解和Ant表示式的許可權控制方式,這個章節也是我們必須要牢牢掌握的。

11. 跨域問題的解決

跨域問題是我們在前後端分離時經常會遇到的問題,對於什麼是跨域,以及如何解決跨域問題,在本章節中都有詳細介紹,我們主要是掌握SpringSecurity環境下的跨域問題解決方案。

12. 實現單點登入

因為目前分散式開發日漸普及,雖然帶來了效能的提升,但是也帶來了很多問題,比如常規的登入在分散式環境下就存在一定的問題,所以你可以透過本章節掌握到什麼是單點登入,以及如何實現簽名、如何基於SpringSecurity實現單點登入。

13. OAuth2.0協議簡介

本章節主要是給大家介紹了另一個開源協議,即OAuth2.0協議,主要是掌握OAuth2.0協議中的認證授權方式及原理,這可以為我們後面學習OAuth2.0協議打下基礎。

只要各位認真的閱讀本系列教程中的內容,我相信你一定可以做到從入門到精通,後面我會推出一個利用SpringSecurity搭建的許可權控制專案教程,希望各位長期關注  一一哥  哦。

專欄往期精彩內容

Spring   Security 開發專欄 24 章即將上線!

Spring   Security 開發正式上線!

Spring   Security 系列教程之建立專案

Spring   Security 系列教程之實現 HTTP 基本認證

Spring   Security 系列教程之實現 Form 表單認證

Spring   Security 系列之實現 HTTP 摘要認證

Spring   Security 系列之前後端分離時的安全處理方案

Spring   Security 系列教程之基於記憶體模型實現授權

Spring   Security 系列教程之基於預設資料庫模型實現授權

Spring   Security 系列教之基於自定義資料庫模型實現授權

spring   security 系列教程之 Spring Security 核心 API 講解

Spring   Security 系列教程之 Spring Security 認證授權流程

Spring   Security 系列教程之基於過濾器實現圖形驗證碼

Spring   Security 系列教程之基於自定義的認證提供器實現圖形驗證碼

Spring   Security 系列教程之基於雜湊加密方案實現自動登入

Spring   Security 系列教程之登出登入的實現及原理分析

Spring   Security 系列教程之會話管理之防禦固定會話攻擊

Spring   Security 系列教程之會話管理之處理會話過期

Spring   Security 系列教程之會話管理之會話併發控制

Spring   Security 系列教程之會話管理之實現叢集會話

Spring   Security 系列教程之 SpringSecurity 中的密碼加密

Spring   Security 系列教程之 Spring Security 的四種許可權控制方式

Spring   Security 系列教程之解決 Spring Security 環境中的跨域問題

Spring   Security 系列教程之基於持久化令牌方案實現自動登入

Spring   Security 系列教程之解決 Spring Security 環境中的跨域問題

Spring   Security 系列教程之實現 CAS 單點登入上篇 - 概述

Spring   Security 系列教程之實現 CAS 單點登入 - 搭建 CAS 服務端

Spring   Security 系列教程之實現 CAS 單點登入下篇 - 搭建 CAS 客戶端

Spring Security系列教程之OAuth2.0協議詳解

本文來自千鋒教育,轉載請註明出處。

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

相關文章