這一套筆記總共分爲五份:第一份筆記講述的是Spring Security OAuth2.0認證授權項目的理論基礎,第二份筆記是整個項目的實戰操作,最後三套講述的是源碼筆記(幫助大家去理解整套的項目)
下面我們一份一份的筆記來看,由於文章的篇幅有限,小編只能爲大家展示完整的項目目錄和部分內容(整套筆記的完整獲取方式我放在了文末!)
第一份筆記:Spring Security OAuth2.0認證授權理論基礎
1.基本概念
1.1.什麼是認證
1.2什麼是會話
1.2什麼是授權
1.3授權的數據模型
1.4 RBAC
- 1.4.1 基於角色的訪問控制
- 1.4.2基於資源的訪問控制
2基於Session的認證方式
2.1認證流程
2.2.創建工程
- 2.2.1 創建maven工程
- 2.2.2 Spring 容器配置
- 2.2.3 servletContext配置
- 2.2.4加載Spring容器
2.3.實現認證功能
2.4.實現會話功能
2.5.實現授權功能
3.Spring Security快速上手
3.1 Spring Security介紹
3.2創建工程
- 3.2.1 創建maven工程
- 3.2.2 Spring容器配置
- 3.2.3 Servlet Context配置
- 3.2.4 加裁Spring容器
3.3認證
- 3.3.1 認證頁面
- 3.3.2.安全配置
- 3.3.2.Spring Security初始化
- 3.2.3 默認根路徑請求
- 3.2.4.認證成功頁面
- 3.2.5 測試
4 Spring Security應用詳解
4.1集成SpringBoot
- 4.1.1 Spring Boot介紹!
- 4.1.2 創建maven工程
- 4.1.3 spring容器配置
- 4.1.4 Servlet Context配置
- 4.1.5 安全配置
- 4.1.6 測試
4.2工作原理
4.2.1 結構總覽
4.3自定義認證
4.3.1 自定義登錄頁面
- 4.3.1.1認證頁面
- 4.3.1.2配置認證頁面
- 4.3.1.3 安全配置
- 4.3.1.4 測試
4.3.2 連接數據庫認證
- 4.3.2.1 創建數據庫
- 4.3.2.2 代碼實現
- 4.3.2.3 定義UserDetailSernice
- 4.3.2.4 測試
- 4.3.2.5使用BCryptPasswordEncoder
4.4會話
4.5退出
4.6授權
5.分佈式系統認證方案
5.1什麼是分佈式系統
5.2分佈式認證需求
5.3分佈式認證方案
6.OAuth2.0
6.1 OAuth2.0介紹
6.2 Spring Cloud Security OAuth2
6.2.1環境介紹
6.2.2環境搭建
- 6.2.2.1 父工程
- 6.2.2.2 創建UAA授權服務工程
- 6.2.2.3創建Order資源服務工程
6.2.2.授權服務器配置
- 6.2.2.1 EnableAuthorizationServer
- 6.2.2.1.配置客戶端詳細信息
- 6.2.2.2.管理令牌
- 6.2.2.3.令牌訪問端點配置
- 6.2.2.4.令牌端點的安全約束
- 6.2.2.5 web安全配置
6.2.3.授權碼模式
6.2.4.簡化模式
6.2.5.密碼模式
6.2.6.客戶端模式
- 6.2.6.1 客戶端模式介紹
- 6.2.6.2客戶端模式介紹
6.2.7.資源服務測試
- 6.2.7.1 資源服務器配置
- 6.2.7.2 驗證token
- 6.2.7.3編寫資源
- 6.2.7.4添加安全訪問控制
- 6.2.7.5 測試
6.3 JWT令牌
- 6.3.1 JWT介紹
- 6.3.2 配置JWT令牌服務
- 6.3.3 生成jwt令牌
- 6.3.4 校驗jwt令牌
6.4完善環境配置
- 6.4.1 創建表
- 6.4.2 配置授權服務
- 6.4.3測試
7.Spring Security實現分佈式系統授權
7.1需求分析
7.2.註冊中心
7.3.網關
- 7.3.1創建工程
- 7.3.2 token配置
- 7.3.3配置資源服務
- 7.3.4 安全配置
7.3.轉發明文token給微服務
7.4.微服務用戶鑑權攔截
7.5.集成測試
7.6擴展用戶信息
第二份筆記:Spring Security OAuth2.0認證授權項目實戰
一、案例介紹
1.1 案例效果圖
- 1.1.1啓動項目進入首頁;
- 1.1.2系統管理界面
- 1.1.3 基礎數據界面
- 1.1.4 項目最終目錄結構
1.2建表語句
1.3頁面部分所用技術簡單說明
- 1.3.1 adminlTE介紹
- 1.3.2 adminITE使用
1.4後臺部分所用技術簡單說明
二、初識權限管理
2.1權限管理概念
2.2完成權限管理需要三個對象
三、初識Spring Security
3.1 Spring Security概念
3.2 Spring Security簡單入門
- 3.2.1 創建web工程並導入jar包
- 3.2.2 配置web.xml
- 3.2.3 配置spring-security.xml
- 3.2.4 將spring-security.xml配置文件引入到applicationContext.xml中
- 3.2.5 運行結果
四、Spring Security過濾器鏈
4.1 Spring Security常用過濾器介紹
4.2 spring security過濾器鏈加載原理
- 4.2.1 DelegatingFilterProxy
- 4.2.2 FilterChainProxy
- 4.2.3 SecurityFilterChain
五、SpringSecurity使用自定義認證頁面
5.1在SpringSecurity主配置文件中指定認證頁面配置信息
5.2 SpringSecurity的csrf防護機制
- 5.2.1 SpringSecurity中CsrFilter過濾器說明
- 5.2.2 禁用csrf防護機制
- 5.2.3 在認證頁面攜帶token請求
六SpringSecurity使用數據庫數據完成認證
6.1認證流程分析
- UsernamePasswordAuthenticationFilter
- AuthenticationManager
- AbstractUserDetailsAuthenticationProvider
- AbstractUserDetailsAuthenticationProvider中authenticate返回值
- UsernamePasswordAuthenticationToken
- AbstractAuthenticationToken
- AbstractAuthenticationProcessingFilter
6.2初步實現認證功能
- 6.2.1 讓我們自己的UserService接繼承UserDetailsService
- 6.2.2編寫loadUserByUsername業務
- 6.2.3 在SpringSecurity主配置文件中指定認證使用的業務對象
6.3加密認證
- 6.3.1 在IOC容器中提供加密對象
- 6.3.2 修改認證方法
- 6.3.3修改添加用戶的操作
- 6.3.4 手動將數據庫中用戶密碼改爲加密後的密文
第三份——第五份筆記(整套項目的源碼筆記)
第一份源碼筆記
第二份源碼筆記
第三份源碼筆記
需要領取整套的項目理論基礎+實戰+源碼筆記的老鐵,麻煩幫忙轉發一下這篇文章(讓更多的老鐵學習到)+關注我,然後掃碼獲取!