API安全實戰

API安全實戰 pdf epub mobi txt 电子书 下载 2025

(美)尼爾·馬登
想要找书就要到 小特书站
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

本書旨在引導讀者掌握在不同環境下確保API安全所需的技術。首先介紹基本的安全編碼技術,之後深入研究身份認證和授權技術。
 
全書共5部分,13章,其中:第1部分介紹了API安全的基本原理,是本書其餘內容的基礎;第2部分更詳細地介紹RESTful API的身份驗證機制;第3部分介紹了授權(authorization)相關的內容;第4部分深入探討了如何確保運行在Kubernetes環境下的微服務API的安全性;第5部分介紹物聯網(IoT)中的API。這類API的安全尤其有挑戰性,因為物聯網設備的能力往往很有限,並且會遭遇到各種各樣的威脅。對於構建Web程式有一定經驗的開發人員來講,本書可以提高他們對API安全技術和最佳實踐的瞭解,也有助於技術架構師緊跟最新API安全方法技術更新的步伐。

著者信息

图书目录

譯者序
前言
致謝
關於本書
關於作者

第一部分 基礎
第1章 什麼是API安全 2
1.1 打個比方:參加駕照考試 3
1.2 什麼是API 4
1.3 API安全上下文 6
1.4 API安全要素 10
1.4.1 資產 11
1.4.2 安全目標 11
1.4.3 環境與威脅模型 13
1.5 安全機制 15
1.5.1 加密 16
1.5.2 身份識別和身份驗證 17
1.5.3 存取控制和授權 18
1.5.4 審計日誌 19
1.5.5 速率限制 20
小測驗答案 21
小結 21
第2章 安全API開發 22
2.1 Natter API 22
2.1.1 Natter API概覽 23
2.1.2 功能實現概覽 24
2.1.3 設置專案 25
2.1.4 初始化資料庫 26
2.2 開發REST API 28
2.3 連接REST終端 31
2.4 注入攻擊 33
2.4.1 防禦注入攻擊 37
2.4.2 使用權限緩解SQL注入攻擊 39
2.5 輸入驗證 40
2.6 生成安全的輸出 45
2.6.1 利用XSS攻擊 47
2.6.2 防禦XSS攻擊 49
2.6.3 實施防護 50
小測驗答案 52
小結 53
第3章 加固Natter API 54
3.1 使用安全控制來處置威脅 54
3.2 速率限制解決可用性 55
3.3 使用身份驗證抵禦欺騙 61
3.3.1 HTTP基本驗證 62
3.3.2 使用Scrypt確保密碼安全存儲 62
3.3.3 創建密碼資料庫 63
3.3.4 在Natter API中註冊用戶 64
3.3.5 驗證用戶 66
3.4 使用加密確保資料不公開 68
3.4.1 啟用HTTPS 70
3.4.2 加強資料傳輸安全 71
3.5 使用審計日誌問責 72
3.6 存取控制 77
3.6.1 強制身份驗證 78
3.6.2 存取控制清單 79
3.6.3 Natter的強制存取控制 81
3.6.4 Natter空間增加新成員 83
3.6.5 避免提權攻擊 84
小測驗答案 85
小結 85

第二部分 基於權杖的身份驗證
第4章 會話Cookie驗證 88
4.1 Web流覽器的身份驗證 88
4.1.1 在JavaScript中調用Natter API 89
4.1.2 表單提交攔截 91
4.1.3 提供同源HTML服務 91
4.1.4 HTTP認證的缺點 94
4.2 基於權杖的身份驗證 95
4.2.1 權杖存儲抽象 97
4.2.2 基於權杖登錄的實現 98
4.3 Session Cookie 100
4.3.1 防範會話固定攻擊 103
4.3.2 Cookie安全屬性 105
4.3.3 驗證會話Cookie 107
4.4 防範跨站請求偽造攻擊 109
4.4.1 SameSite Cookie 111
4.4.2 基於雜湊計算的雙重提交Cookie 113
4.4.3 在Natter API中應用雙重提交Cookie 116
4.5 構建Natter登錄UI 121
4.6 實現註銷 125
小測驗答案 127
小結 127
第5章 最新的基於權杖的身份驗證 128
5.1 使用CORS允許跨域請求 128
5.1.1 預檢請求 129
5.1.2 CORS頭 131
5.1.3 在Natter API中添加CORS頭部 132
5.2 不使用Cookie的權杖 135
5.2.1 在資料庫中保存權杖的狀態 136
5.2.2 Bearer身份驗證方案 141
5.2.3 刪除過期權杖 143
5.2.4 在Web存儲中存儲權杖 143
5.2.5 修改CORS篩檢程式 146
5.2.6 對Web存儲的XSS攻擊 147
5.3 加固資料庫權杖存儲 149
5.3.1 對資料庫權杖進行雜湊計算 150
5.3.2 使用HMAC驗證權杖 151
5.3.3 保護敏感屬性 156
小測驗答案 158
小結 159
第6章 自包含權杖和JWT 160
6.1 在用戶端存儲權杖狀態 160
6.2 JSON Web權杖 163
6.2.1 標準JWT聲明 165
6.2.2 JOSE頭部 166
6.2.3 生成標準的JWT 168
6.2.4 驗證簽名JWT 171
6.3 加密敏感屬性 172
6.3.1 認證加密 173
6.3.2 NaCl認證加密 175
6.3.3 加密JWT 177
6.3.4 使用JWT庫 180
6.4 使用安全類型來加固API設計 183
6.5 處理權杖撤銷 185
小測驗答案 189
小結 189

第三部分 授權
第7章 OAuth2和OpenID Connect 192
7.1 作用域權杖 193
7.1.1 在Natter中添加作用域權杖 193
7.1.2 作用域和許可權之間的區別 197
7.2 OAuth2簡介 200
7.2.1 用戶端類型 201
7.2.2 授權許可 201
7.2.3 發現OAuth2終端 203
7.3 授權碼許可 204
7.3.1 重定向不同類型用戶端的URI 208
7.3.2 使用PKCE增強授權碼交換安全性 209
7.3.3 刷新權杖 210
7.4 驗證訪問權杖 211
7.4.1 權杖自省 212
7.4.2 確保HTTPS用戶端配置安全 217
7.4.3 權杖撤銷 219
7.4.4 JWT訪問權杖 221
7.4.5 加密JWT訪問權杖 227
7.4.6 讓AS解密令牌 228
7.5 單點登錄 229
7.6 OpenID Connect 230
7.6.1 ID權杖 231
7.6.2 加固OIDC 232
7.6.3 向API傳遞ID權杖 233
小測驗答案 235
小結 235
第8章 基於身份的存取控制 237
8.1 用戶和組 237
8.2 基於角色的存取控制 243
8.2.1 角色映射許可權 244
8.2.2 靜態角色 245
8.2.3 確定用戶角色 247
8.2.4 動態角色 248
8.3 基於屬性的存取控制 249
8.3.1 組合決策 251
8.3.2 實現ABAC策略 252
8.3.3 策略代理和API閘道 256
8.3.4 分散式策略實施和XACML 257
8.3.5 ABAC最佳實踐 258
小測驗答案 260
小結 260
第9章 基於能力的安全和Macaroon 261
9.1 基於能力的安全 261
9.2 能力和REST API 263
9.2.1 能力URI 265
9.2.2 在Natter API中使用能力URI 268
9.2.3 HATEOAS 272
9.2.4 基於流覽器用戶端的能力URI 276
9.2.5 能力與身份相結合 278
9.2.6 加固能力URI 279
9.3 Macaroon:含有caveat的權杖 282
9.3.1 上下文caveat 284
9.3.2 Macaroon權杖存儲 285
9.3.3 第一方caveat 288
9.3.4 協力廠商caveat 291
小測驗答案 293
小結 293

第四部分 Kubernetes中的微服務API及服務到服務API的安全
第10章 Kubernetes中的微服務API 296
10.1 Kubernetes上的微服務API 297
10.2 在Kubernetes上部署Natter API 300
10.2.1 將H2資料庫構建為Docker容器 301
10.2.2 將資料庫部署到Kubernetes 305
10.2.3 將Natter API構建為Docker容器 309
10.2.4 連結預覽微服務 313
10.2.5 部署新的微服務 315
10.2.6 調用連結預覽微服務 317
10.2.7 防範SSRF攻擊 320
10.2.8 DNS重綁定攻擊 325
10.3 確保微服務通信安全 327
10.3.1 使用TLS來保證通信安全 327
10.3.2  使用TLS服務網格 329
10.3.3 鎖定網路連接 333
10.4 確保輸入請求的安全性 335
小測驗答案 339
小結 339
第11章 服務到服務API的安全 340
11.1 API金鑰和JWT Bearer身份驗證 340
11.2 OAuth2用戶端憑證許可 342
11.3 OAuth2的JWT Bearer許可 345
11.3.1 用戶端驗證 346
11.3.2 生成JWT 349
11.3.3 服務帳戶身份驗證 351
11.4 Mutual TLS驗證 352

图书序言

图书试读

用户评价

相关图书

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 ttbooks.qciss.net All Rights Reserved. 小特书站 版权所有