Spring Security實戰
  • 推薦1
  • 收藏1
  • 瀏覽427

Spring Security實戰

陳木鑫 (作者)  安娜 (責任編輯)

  • 書  號:ISBN 978-7-121-37143-1
  • 出版日期:2019-08-20
  • 頁  數:296
  • 開  本:16(185*235)
  • 出版狀態:上市銷售
  • 維護人:安娜

相關圖書

Android軟件安全權威指南

豐生強 (作者)

本書從平臺搭建和語言基礎開始,循序漸進地講解了Android平臺上的軟件安全技術,提供了對Windows、Linux、macOS三個平臺的支持,涉及與Andro...

 

加密與解密(第4版)

段鋼 (作者)

本書以軟件逆向為切入點,講述了軟件安全領域相關的基礎知識和技能。讀者閱讀本書后,很容易就能在逆向分析、漏洞分析、安全編程、病毒分析等領域進行擴展。這些知識點的相...

¥198.00

Kali Linux大揭秘

(美國)Raphael Hertzog,(美國)Jim O'Gorman (作者) 諸葛建偉 (譯者)

Kali Linux是設計用于數字取證和滲透測試的操作系統,本書是官方出版的僅有的一本著作。講述了如何上手、配置、安全加固、自定義、安全評估等概念。<br>在本...

¥59.00

Web安全攻防:滲透測試實戰指南

徐焱 李文軒 王東亞 (作者)

  本書由淺入深、全面、系統地介紹了當前流行的高危漏洞的攻擊手段和防御方法,并力求語言通俗易懂,舉例簡單明了,便于讀者閱讀、領會。結合具體案例進行講解,可以讓讀...

¥54.00

iOS逆向與安全

劉培慶 (作者)

本書從正向開發、工具的使用、逆向實戰及安全保護等方面,對iOS應用的逆向與安全進行了講解。本書內容包括基本概念、逆向環境的準備、常用逆向分析工具、類的結構、Ap...

¥85.00

網絡安全法與網絡安全等級保護制度培訓教程(2018版)

郭啟全 (作者)

本書共9章,包括網絡安全概述、《網絡安全法》解讀、網絡安全等級保護制度、網絡安全等級保護政策體系和標準體系、網絡安全等級保護的定級與備案、網絡安全等級保護的建設...

¥79.00
Spring Security 是一個強大且高度可定制的安全框架,致力于為Java 應用提供身份認證和授權。
本書通過4 部分內容由淺入深地介紹了Spring Security 的方方面面。第1 部分主要講解Spring Security的基本配置;第2 部分剖析Web 項目可能遇到的安全問題,并講解如何使用Spring Security 進行有效防護;第3 部分詳細介紹OAuth,并使用Spring Social 整合Spring Security,實現QQ 快捷登錄;第4 部分重點介紹Spring Security OAuth 框架,剖析Spring Security OAuth 的部分核心源碼。
本書適合有一定Java 基礎的讀者,以及希望在項目中應用Spring Security 的開發人員閱讀。
包含Spring Security Java配置、Spring Security安全防護和源碼導讀。
詳細講解OAuth2實戰,并簡單剖析部分OAuth2核心源碼。
陳木鑫,熱愛編碼,信奉知識沉淀的力量,平常多有關注前沿技術棧,包括但不限于前后端技術、DevOps、Serverless等,近期主要從事IM平臺的研發。
前言

Spring Security 的前身是Acegi Security,在被收納為Spring 子項目后正式更名為SpringSecurity。在筆者成書時,Spring Security 已經升級到5.1.3.RELEASE 版本,不僅新增了原生OAuth框架,還支持更加現代化的密碼加密方式。可以預見,在Java 應用安全領域,Spring Security會成為首先被推崇的安全解決方案。

雖然Spring Security 有強大的功能,但它同時也有很高的學習成本。它囊括了身份認證的各種應用場景以及Web 安全的大量知識,僅官方參考手冊就有數十萬字,并且還省略了諸多實現細節。許多開發人員在面對這樣的“龐然大物”時無從入手,更因為對其不夠了解而在實際項目中不敢輕易采用。

本書由淺入深、抽絲剝繭地講解了Spring Security 的典型應用場景,另外,還分析了部分核心源碼,以及許多開發語言之外的安全知識。通過本書,讀者不僅可以學習如何應用SpringSecurity,還可以學習借鑒它的實現思路,以將這種實現思路應用到其他開發場景中。

本書讀者
本書主要面向有一定Java 基礎的讀者,以及希望在實際項目中應用Spring Security 的開發人員。

本書內容
本書共分為4 個部分。
第1 部分(第1 章至第3 章)主要介紹Spring Security 的基本配置,包括默認配置、簡單表單認證,以及基于數據庫模型的認證與授權。

第2 部分(第4 章至第11 章)主要介紹各種定制化的配置場景,剖析Web 項目可能遇到的安全問題,并講解如何使用Spring Security 進行有效防護,部分章節還配備了詳細的源碼導讀。

第3 部分(第13 章)將登錄用戶的數據來源從系統內轉移到社交平臺,詳細介紹了OAuth,并使用Spring Social 整合Spring Security,實現QQ 快捷登錄,滿足一般性的項目需求。

第4 部分(第14 章)帶領讀者認識Spring Security OAuth 框架,并基于該框架完整實現了OAuth 客戶端、OAuth 授權服務器以及OAuth 資源服務器三種角色。除此之外,還簡單剖析了Spring Security OAuth 的部分核心源碼,以幫助讀者更好地理解OAuth 框架。

致謝
首先感謝趙召同學(Andy)對第4 部分的貢獻。筆者在Gitter 發言表明會寫一本關于SpringSecurity 的中文書后,趙召同學找到了我,并希望與我一起寫作,但由于這本書實際上已基本成型,所以趙召同學貢獻了第4 部分,使得本書內容更加充實,再次感謝趙召同學的貢獻。其次也非常感謝博文視點公司的安娜編輯以及身邊的朋友給予的鼓勵。從下定決心編寫這本書開始,筆者其實經歷了非常多的折磨,不管是思路的枯竭還是耐心的消磨,都致使筆者幾次三番萌生退,但最終還是在不斷的鼓勵聲中堅持了下來,成功為國內希望學習SpringSecurity 的朋友奉上了一本中文版的教程,這份收獲也應當屬于他們。
陳木鑫

目錄

第1 部分
第1 章 初識Spring Security 2
1.1 Spring Security 簡介 2
1.2 創建一個簡單的Spring Security 項目 4

第2 章 表單認證 . 10
2.1 默認表單認證 10
2.2 自定義表單登錄頁 13

第3 章 認證與授權 19
3.1 默認數據庫模型的認證與授權 19
3.1.1 資源準備 . 19
3.1.2 資源授權的配置 . 20
3.1.3 基于內存的多用戶支持 . 22
3.1.4 基于默認數據庫模型的認證與授權 22
3.2 自定義數據庫模型的認證與授權 27
3.2.1 實現UserDetails 27
3.2.2 實現UserDetailsService 31

第2 部分
第4 章 實現圖形驗證碼 . 36
4.1 使用過濾器實現圖形驗證碼 36
4.1.1 自定義過濾器 . 36
4.1.2 圖形驗證碼過濾器 . 39
4.2 使用自定義認證實現圖形驗證碼 44
4.2.1 認識AuthenticationProvider . 44
4.2.2 自定義AuthenticationProvider . 47
4.2.3 實現圖形驗證碼的AuthenticationProvider . 53

第5 章 自動登錄和注銷登錄 59
5.1 為什么需要自動登錄 59
5.2 實現自動登錄 60
5.3 注銷登錄 69

第6 章 會話管理 . 75
6.1 理解會話 75
6.2 防御會話固定攻擊 76
6.3 會話過期 78
6.4 會話并發控制 79
6.5 集群會話的缺陷 93
6.6 集群會話的解決方案 94
6.7 整合Spring Session 解決集群會話問題 . 95

第7 章 密碼加密 . 98
7.1 密碼安全的重要性 98
7.2 密碼加密的演進 98
7.3 Spring Security 的密碼加密機制 102

第8 章 跨域與CORS 105
8.1 認識跨域 105
8.2 實現跨域之JSONP 106
8.3 實現跨域之CORS . 108
8.4 啟用Spring Security 的CORS 支持 . 110

第9 章 跨域請求偽造的防護 . 113
9.1 CSRF 的攻擊過程 113
9.2 CSRF 的防御手段 114
9.3 使用Spring Security 防御CSRF 攻擊 115

第10 章 單點登錄與CAS 125
10.1 單點登錄 125
10.2 認識CAS . 129
10.3 搭建CAS Server 130
10.4 用Spring Security 實現CAS Client 138

第11 章 HTTP 認證 . 144
11.1 HTTP 基本認證 . 144
11.2 HTTP 摘要認證 . 145
11.2.1 認識HTTP 摘要認證 145
11.2.2 Spring Security 對HTTP 摘要認證的集成支持 146
11.2.3 編碼實現 . 148

第12 章 @EnableWebSecurity 與過濾器鏈機制 . 151
12.1 @EnableWebSecurity . 151
12.2 WebSecurityConfiguration . 152

第3 部分
第13 章 用Spring Social 實現OAuth 對接 . 162
13.1 OAuth 簡介 . 162
13.1.1 什么是OAuth 162
13.1.2 OAuth 的運行流程 164
13.2 QQ 互聯對接準備 168
13.2.1 申請QQ 互聯應用 169
13.2.2 QQ 互聯指南 . 170
13.2.3 回調域名準備 . 174
13.3 實現QQ 快捷登錄 . 176
13.3.1 引入Spring Social . 176
13.3.2 新增OAuth 服務支持的流程 . 178
13.3.3 編碼實現 . 179
13.4 與Spring Security 整合 . 192
13.5 Spring Social 源碼分析 194
13.5.1 SocialAuthenticationFilter . 194
13.5.2 OAuth2AuthenticationService . 195
13.5.3 OAuth2Connection 196
13.5.4 OAuth2Template 198
13.5.5 SocialAuthenticationProvider 199
13.5.6 JdbcUsersConnectionRepository . 200
13.6 配置相關 200

第4 部分
第14 章 用Spring Security OAuth 實現OAuth 對接 . 206
14.1 實現GitHub 快捷登錄 207
14.2 用Spring Security OAuth 實現QQ 快捷登錄 210
14.2.1 OAuth 功能擴展流程 210
14.2.2 編碼實現 . 212
14.2.3 自定義login.html 和index.html . 223
14.2.4 自定義Controller 映射 . 224
14.2.5 啟用自定義登錄頁 . 225
14.3 OAuth Client 功能核心源碼分析 226
14.3.1 OAuth2AuthorizationRequestRedirectFilter . 227
14.3.2 OAuth2LoginAuthenticationFilter . 228
14.3.3 DefaultLoginPageGeneratingFilter 230
14.3.4 OAuth2LoginAuthenticationProvider 231
14.4 Spring Security OAuth 授權服務器 . 232
14.4.1 功能概述 . 233
14.4.2 依賴包說明 . 233
14.4.3 編碼實現 . 234
14.5 OAuth 授權服務器功能擴展和自定義配置 . 236
14.5.1 自定義配置的授權服務器 237
14.5.2 編寫OAuth 客戶端 . 247
14.5.3 使用JDBC 存儲OAuth 客戶端信息 . 248
14.5.4 使用JDBC 存儲token 254
14.5.5 其他功能配置 . 255
14.6 實現OAuth 資源服務器 255
14.6.1 依托于授權服務器的資源服務器 256
14.6.2 獨立的資源服務器 . 258
14.7 Spring Security OAuth 核心源碼分析 . 263
14.7.1 授權服務器核心源碼分析 264
14.7.2 資源服務器核心源碼分析 271

讀者評論

  • 源碼呢 ?站點提供的源碼 不全啊 ??麻煩提供下全書的源碼!!!

    xue_song發表于 2019/10/11 22:26:28
  • 垃圾圖書,沒有代碼,書上很多東西,都缺少,漏洞百出!

    阿杰發表于 2019/10/4 23:05:03
  • 這也叫做有源代碼

    M-Anonymous發表于 2019/10/2 13:07:58
  • 示例代碼缺了很多啊

    自由者發表于 2019/9/29 23:25:26
  • 源碼不全,差評!!!!!!!!!!

    624861ab發表于 2019/9/29 23:20:18

圖書類別

推薦用戶

0k000澳客网竞彩