新到貨2本75折
Spring Security實戰

Spring Security實戰

  • 定價:834
  • 優惠價:87726
  • 運送方式:
  • 臺灣與離島
  • 海外
  • 可配送點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
  • 可取貨點:台灣、蘭嶼、綠島、澎湖、金門、馬祖
載入中...
  • 分享
 

內容簡介

安全性是沒有任何商量餘地的。我們要依賴Spring應用程式來傳輸資料、驗證憑據和防止攻擊。採用“通過設計實現安全防護”的原則將能夠保護我們的網路避免資料被竊取和未經授權的入侵。
 
《Spring Security實戰》展示了如何在造成破壞之前防止跨站腳本和請求偽造攻擊。本書將從基礎開始講解,其中將類比密碼升級並添加多種類型的授權。隨著技能的增長,讀者將可以將Spring Security應用到新的架構中,並創建高級的OAuth2配置。完成之後,讀者將擁有一個定制的Spring Security配置,它可以保護應用程式免受常見的和特殊的威脅。

 

作者介紹

Laureniu Spilc是Endava極為敬業的一位領導和培訓師,在Endava,他領導著一個為北歐國家的金融市場所開發的專案。此前,他是一名軟體發展人員,構建了全球廣泛安裝應用的型的企業資源規劃解決方案之一。

Laureniu堅信,重要的不僅僅是交付高品質的軟體,分享知識,説明他人學習和提高技能也是很重要的。這促使他設計和講授與Java技術相關的課程,並且在美國和歐洲各地進行演講以及參與研討會。他的演講活動包括Voxxed Days、TechFlow、Bucharest Technology Week、JavaSkop、Oracle Code Explore、O’Reilly Software Architecture和Oracle Code One。

 

目錄

第Ⅰ部分  初    識
第1 章  安全性現狀   3
1.1  Spring Security的定義與用途   4
1.2  什麼是軟體安全性   7
1.3  安全性為什麼重要   12
1.4  Web應用程式中的常見安全性漏洞   13
1.4.1  身份驗證和授權中的漏洞   14
1.4.2  什麼是會話固定   15
1.4.3  什麼是跨站腳本(XSS)   16
1.4.4  什麼是跨站請求偽造(CSRF)   17
1.4.5  理解Web應用程式中的注入漏洞   18
1.4.6  應對敏感性資料暴露   18
1.4.7  缺乏方法存取控制指的是什麼   21
1.4.8  使用具有已知漏洞的依賴項   23
1.5  各種架構中所應用的安全性   23
1.5.1  設計一個單體式Web應用程式   24
1.5.2  為前後端分離設計安全性   25
1.5.3  理解OAuth 2流程   27
1.5.4  使用API鍵、加密簽名和IP驗證保護請求   29
1.6  本書知識內容   30
1.7  本章小結   31
第2 章  Spring Security初探   33
2.1  開始構建首個專案   34
2.2  預設配置有哪些   39
2.3  重寫預設配置   43
2.3.1  重寫User Details Service組件   44
2.3.2  重寫端點授權配置   48
2.3.3  以不同方式設置配置   50
2.3.4  重寫Authentication Provider實現   54
2.3.5  在專案中使用多個配置類   58
2.4  本章小結   60

第Ⅱ部分  實現
第3章  管理用戶   63
3.1  在Spring Security中實現身份驗證   64
3.2  描述用戶   66
3.2.1  闡明User Details契約的定義   66
3.2.2  Granted Authority契約詳述   68
3.2.3  編寫User Details的小化實現   69
3.2.4  使用構造器創建User Details類型的實例   72
3.2.5  合併與用戶相關的多個職能   73
3.3  指示Spring Security如何管理用戶   77
3.3.1  理解User Details Service契約   77
3.3.2  實現User Details Service契約   78
3.3.3  實現User Details Manager契約   82
3.4  本章小結   90
第4章  密碼處理   91
4.1  理解Password Encoder契約   91
4.1.1  Password Encoder契約的定義   92
4.1.2  實現Password Encoder契約   93
4.1.3  從Password Encoder提供的實現中選擇   95
4.1.4  使用Delegating Password Encoder實現多種編碼策略   98
4.2  Spring Security Crypto模組的更多知識   102
4.2.1  使用金鑰生成器   102
4.2.2  將加密器用於加密和解密操作   104
4.3  本章小結   106
第5章  實現身份驗證   107
5.1  理解Authentication Provider   109
5.1.1  在身份驗證期間表示請求   110
5.1.2  實現自訂身份驗證邏輯   111
5.1.3  應用自訂身份驗證邏輯   113
5.2  使用Security Context   117
5.2.1  將一種保持策略用於安全上下文   119
5.2.2  將保持策略用於非同步調用   121
5.2.3  將保持策略用於獨立應用程式   123
5.2.4  使用Delegating Security Context Runnable轉發安全上下文   124
5.2.5  使用Delegating Security Context Executor Service轉發安全上下文   127
5.3  理解HTTP Basic和基於表單的登錄身份驗證   129
5.3.1  使用和配置HTTP Basic   130
5.3.2  使用基於表單的登錄實現身份驗證   133
5.4  本章小結   140
第6章  動手實踐:一個小型且安全的Web應用程式   141
6.1  專案需求和設置   141
6.2  實現用戶管理   148
6.3  實現自訂身份驗證邏輯   153
6.4  實現主頁面   156
6.5  運行和測試應用程式   159
6.6  本章小結   161
第7 章  配置許可權:限制訪問   163
7.1  基於許可權和角色限制訪問   165
7.1.1  基於用戶許可權限制所有端點的訪問   167
7.1.2  基於用戶角色限制所有端點的訪問   175
7.1.3  限制對所有端點的訪問   180
7.2  本章小結   183
第8章  配置許可權:應用限制   185
8.1  使用匹配器方法選擇端點   185
8.2  使用MVC匹配器選擇用於授權的請求   192
8.3  使用Ant匹配器選擇用於授權的請求   200
8.4  使用規則運算式匹配器選擇用於授權的請求   204
8.5  本章小結   210
第9章  實現篩檢程式   211
9.1  在Spring Security架構中實現篩檢程式   213
9.2  在篩檢程式鏈中現有篩檢程式之前添加篩檢程式   215
9.3  在篩檢程式鏈中已有的篩檢程式之後添加篩檢程式   219
9.4  在篩檢程式鏈中另一個篩檢程式的位置添加一個篩檢程式   222
9.5  Spring Security提供的Filter實現   227
9.6  本章小結   229
第10章  應用CSRF防護和CORS   231
10.1  在應用程式中應用跨站請求偽造(CSRF)防護   231
10.1.1  CSRF防護如何在Spring Security中發揮作用   232
10.1.2  在實際場景中使用CSRF防護   238
10.1.3  自訂CSRF防護   244
10.2  使用跨源資源分享   255
10.2.1  CORS的運行機制   256
10.2.2  使用@Cross Origin注解應用CORS策略   261
10.2.3  使用Cors Configurer應用CORS   262
10.3  本章小結   263
第11章  動手實踐:職責分離   265
11.1  示例的場景和需求   266
11.2  實現和使用權杖   269
11.2.1  權杖是什麼   269
11.2.2  JSON Web Token是什麼   272
11.3  實現身份驗證伺服器   274
11.4  實現業務邏輯伺服器   285
11.4.1  實現Authentication物件   290
11.4.2  實現身份驗證伺服器的代理   292
11.4.3  實現Authentication Provider介面   295
11.4.4  實現篩檢程式   297
11.4.5  編寫安全性配置   304
11.4.6  測試整個系統   306
11.5  本章小結   307
第12章  OAuth 2的運行機制   309
12.1  OAuth 2框架   310
12.2  OAuth 2身份驗證架構的組件   312
12.3  使用OAuth 2的實現選項   313
12.3.1  實現授權碼授權類型   313
12.3.2  實現密碼授權類型   318
12.3.3  實現用戶端憑據授權類型   320
12.3.4  使用刷新權杖獲得新的訪問權杖   321
12.4  OAuth 2的弱點   323
12.5  實現一個簡單的單點登錄應用程式   324
12.5.1  管理授權伺服器   325
12.5.2  開始實現   328
12.5.3  實現Client Registration   330
12.5.4  實現Client Registration  Repository   333
12.5.5  Spring Boot配置的純粹方式   335
12.5.6  獲取經過身份驗證的使用者的詳細資訊   337
12.5.7  測試應用程式   338
12.6  本章小結   341
第13章  OAuth 2:實現授權伺服器   343
13.1  編寫我們自己的授權伺服器實現   345
13.2  定義用戶管理   346
13.3  向授權伺服器註冊用戶端   349
13.4  使用密碼授權類型   353
13.5  使用授權碼授權類型   355
13.6  使用用戶端憑據授權類型   361
13.7  使用刷新權杖授權類型   364
13.8  本章小結   366
第14章  OAuth 2:實現資原始伺服器   367
14.1  實現資原始伺服器   369
14.2  遠程檢查權杖   372
14.3  實現帶有Jdbc Token Store的黑板模式   380
14.4  兩種方法的簡要對比   389
14.5  本章小結   390
第15章  OAuth 2:使用JWT和加密簽名   391
15.1  使用JWT以及對稱金鑰簽名的權杖   391
15.1.1  使用JWT   392
15.1.2  實現授權伺服器以頒發JWT   393
15.1.3  實現使用JWT的資原始伺服器   398
15.2  使用通過JWT和非對稱金鑰簽名的權杖   402
15.2.1  生成金鑰對   403
15.2.2  實現使用私密金鑰的授權伺服器   405
15.2.3  實現使用公開金鑰的資原始伺服器   407
15.2.4  使用一個暴露公開金鑰的端點   409
15.3  將自訂詳細資訊添加到JWT   413
15.3.1  配置授權伺服器以便向權杖添加自訂詳細資訊   414
15.3.2  配置資原始伺服器以讀取JWT的自訂詳細資訊   416
15.4  本章小結   419
第16章  全域方法安全性:預授權和後授權   421
16.1  啟用全域方法安全性   422
16.1.1  理解調用授權   422
16.1.2  在專案中啟用全域方法安全性   425
16.2  對許可權和角色應用預授權   426
16.3  應用後授權   431
16.4  實現方法的許可   436
16.5  本章小結   448
第17章  全域方法安全性:預過濾和後過濾   451
17.1  為方法許可權應用預過濾   452
17.2  為方法授權應用後過濾   459
17.3  在Spring Data存儲庫中使用過濾   463
17.4  本章小結   470
第18章  動手實踐:一個OAuth 2 應用程式   471
18.1  應用程式場景   472
18.2  將Keycloak配置為授權伺服器   474
18.2.1  為系統註冊一個用戶端   478
18.2.2  指定用戶端作用域   479
18.2.3  添加用戶並獲取訪問權杖   481
18.2.4  定義用戶角色   485
18.3  實現資原始伺服器   490
18.4  對應用程式進行測試   501
18.4.1  證明經過身份驗證的使用者只能為自己添加記錄   502
18.4.2  證明使用者只能檢索自己的記錄   504
18.4.3  證明只有管理員才能刪除記錄   505
18.5  本章小結   506
第19 章  在反應式應用程式中使用Spring Security   509
19.1  什麼是反應式應用程式   510
19.2  反應式應用程式中的使用者管理   514
19.3  在反應式應用程式中配置授權規則   519
19.3.1  在反應式應用程式的端點層應用授權   520
19.3.2  在反應式應用程式中使用方法安全性   526
19.4  反應式應用程式和OAuth 2   529
19.5  本章小結   532
第20章  Spring Security測試   535
20.1  使用模擬用戶進行測試   537
20.2  使用User Details Service提供的用戶進行測試   545
20.3  將自訂Authentication對象用於測試   547
20.4  測試方法安全性   551
20.5  測試身份驗證   552
20.6  測試CSRF配置   556
20.7  測試CORS配置   557
20.8  測試反應式Spring Security實現   558
20.9  本章小結   561
附錄A  創建一個Spring Boot
項目   563

 

詳細資料

  • ISBN:9787302594246
  • 規格:平裝 / 566頁 / 16k / 19 x 26 x 2.83 cm / 普通級 / 單色印刷 / 初版
  • 出版地:中國

最近瀏覽商品

 

相關活動

  • 【科普、飲食、電腦】高寶電子書暢銷書展:人生就是選擇的總和,全展75折起
 

購物說明

溫馨提醒您:若您訂單中有購買簡體館無庫存/預售書或庫存於海外廠商的書籍,建議與其他商品分開下單,以避免等待時間過長,謝謝。

大陸出版品書況:因裝幀品質及貨運條件未臻完善,書況與台灣出版品落差甚大,封面老舊、出現磨痕、凹痕等均屬常態,故簡體字館除封面破損、內頁脫落...等較嚴重的狀態外,其餘所有商品將正常出貨。 

 

請注意,部分書籍附贈之內容(如音頻mp3或影片dvd等)已無實體光碟提供,需以QR CODE 連結至當地網站註冊“並通過驗證程序”,方可下載使用。

調貨時間:若您購買海外庫存之商品,於您完成訂購後,商品原則上約45個工作天內抵台(若有將延遲另行告知)。為了縮短等待的時間,建議您將簡體書與其它商品分開訂購,以利一般商品快速出貨。 

若您具有法人身份為常態性且大量購書者,或有特殊作業需求,建議您可洽詢「企業採購」。 

退換貨說明 

會員所購買的商品均享有到貨十天的猶豫期(含例假日)。退回之商品必須於猶豫期內寄回。 

辦理退換貨時,商品必須是全新狀態與完整包裝(請注意保持商品本體、配件、贈品、保證書、原廠包裝及所有附隨文件或資料的完整性,切勿缺漏任何配件或損毀原廠外盒)。退回商品無法回復原狀者,恐將影響退貨權益或需負擔部分費用。 

訂購本商品前請務必詳閱商品退換貨原則

  • 翦商作者新作79折
  • 針灸匠張寶旬
  • 浪漫小說精選3本72折