數字身份認證技術與實踐
田傑
買這商品的人也買了...
-
加密與解密, 4/e$1,188$1,128 -
一書貫通 -- 從資料科學橫入人工智慧領域$650$553 -
數據分析的力量 Google、Uber 都在用的因果關係思考法$300$270 -
A-Life|使用 Python 實作人工生命模型$520$410 -
因果革命:人工智慧的大未來 (硬殼精裝)(The Book of Why: The New Science of Cause and Effect)$680$578 -
這就是服務設計!|服務設計工作者的實踐指南 (This Is Service Design Doing: Applying Service Design Thinking in the Real World)$880$695 -
失控的數據:數字管理的誤用與濫用,如何影響我們的生活與工作,甚至引發災難$380$342 -
深度學習|生命科學應用 (Deep Learning for the Life Sciences)$580$458 -
持續交付 2.0:實務導向的 DevOps$680$530 -
動手做深度強化學習 (Deep Reinforcement Learning Hands-On)$690$345 -
IPFS 原理與實戰$380$300 -
超大流量系統解決方案 : 大型網站架構師的經驗分享$690$538 -
AI 影像深度學習啟蒙 : 用 Python 進行人臉口罩識別$880$695 -
$708隱私計算 -
實戰 Linux 系統數位鑑識 (Practical Linux Forensics: A Guide for Digital Investigators)$620$465 -
$504同態密碼學原理及算法 -
精通 API 架構|設計、營運和發展基於 API 的系統 (Mastering API Architecture: Design, Operate, and Evolve Api-Based Systems)$680$537 -
大神養成術 - Node.js+Express + MongoDB+Vue.js 全端實作現場$800$632 -
Node.js 量化投資全攻略:從資料收集到自動化交易系統建構實戰(iThome鐵人賽系列書)【軟精裝】$760$380 -
$516大規模語言模型:從理論到實踐 -
Staff 工程師之路|獻給個人貢獻者成長與改變的導航指南 (The Staff Engineer's Path)$580$458 -
$703零信任安全從入門到精通 -
Flutter 跨平臺開發實戰$414$393 -
$280電氣控制及可編程控制技術應用 -
AD 域攻防權威指南$774$735
資訊安全書展|中文簡體2書75折 英文2書85折 詳見活動內容 »
-
CYBERSEC 2026 臺灣資安年鑑 ─ AI 代理改寫資安戰局 掌握10大關鍵風險$179$161 -
CYBERSEC 2025 臺灣資安年鑑 ─ 全球地緣政治衝突激化,國家級駭客鎖定企業$179$161 -
CYBERSEC 2024 臺灣資安年鑑 ─ AI 資安 2024 徹底剖析生成式 AI 資安攻防態勢$179$161 -
CYBERSEC 2022 臺灣資安年鑑 ─ 零信任資安時代來臨:信任邊界徹底瓦解,安全需源自反覆驗證$179$161 -
CYBERSEC 2021 臺灣資安年鑑 ─ 資安絕地大反攻:新一代主動式資安防禦概念來了!$179$161 -
5折
未來數位科技活用大全:從 AI 協作、程式設計、資訊安全到大數據分析, 2/e$600$300 -
79折
混合雲安全架構|零信任原則的安全設計方法與實作 (Security Architecture for Hybrid Cloud: A Practical Method for Designing Security Using Zero Trust Principles)$780$616 -
79折
駭客的 Linux 基礎入門必修課, 2/e (Linux Basics for Hackers : Getting Started with Networking, Scripting, and Security in Kali, 2/e)$520$410 -
78折
Graylog 整合應用實戰:打造視覺化與智慧化的新世代資安監控平台$650$507 -
79折
雲端原生資安指南|CNAPP 打造 DevSecOps 零死角防護 (Cloud Native Application Protection Platforms: A Guide to CNAPPs and the Foundations of Comprehensive Cloud Security)$580$458 -
79折
零信任網路|在不受信任的網路中建構安全系統, 2/e (Zero Trust Networks: Building Secure Systems in Untrusted Networks, 2/e)$680$537 -
5折
看不見的戰場:社群、AI 與企業資安危機$750$375 -
79折
數位國土保衛戰:從數位身分證、AI到電子投票,揭開臺灣數位化暗藏的國安危機$420$331 -
54折
裂縫碎光:資安數位生存戰$550$299 -
79折
LLM 資安教戰手冊|打造安全的 AI 應用程式 (The Developer's Playbook for Large Language Model Security)$580$458 -
66折
究極 Web 資安心智圖學習法!嚴選12大主題 × 7張心智圖 × 7個實戰,核心技能無痛升級(iThome鐵人賽系列書)$620$409 -
85折
資訊安全管理領導力實戰手冊$599$509 -
78折
一個人的藍隊:企業資安防護技術實戰指南(iThome鐵人賽系列書)$650$507 -
63折
資安密碼-隱形帝國:AI數位鑑識、社交工程攻防與現代密碼技術實戰$550$349 -
78折
資安鑑識分析:數位工具、情資安全、犯罪偵防與證據追蹤$560$436 -
85折
鋼索上的管理課【全新增訂版+資安風險升級主題】:韌性與敏捷管理的洞見與實踐$480$408 -
5折
營養師不開菜單後的 Next.js 全端轉職攻略:從專案規劃、畫面設計、資安到 SEO,挑戰一人 Side Project (iThome鐵人賽系列書)$680$340 -
5折
從零開始 OCS Inventory:打造資訊資產管理 × 資安 CVE 漏洞通報(iThome鐵人賽系列書)$650$325 -
79折
Beyond XSS:探索網頁前端資安宇宙$880$695 -
75折
工控資安銳視角:石化場域 OT / ICS 學習筆記$680$510
資訊安全書展|中文簡體2書75折 英文2書85折 詳見活動內容 »
-
VIP 95折
築牢“養蝦”全場景安全防線:保姆級 OpenClaw 安全應用實戰$299$284 -
VIP 95折
人工智能的後量子安全$708$672 -
VIP 95折
AI驅動安全:技術原理與行業實踐$779$740 -
VIP 95折
數據安全架構設計與實戰$654$621 -
85折
$504網絡安全治理 基於DevSecOps的理論與實踐 -
VIP 95折
可信計算原理及應用$359$341 -
85折
$453供應鏈安全與治理:基於關鍵信息基礎設施信息系統的實踐 -
75折
$224安全至上——高職學校學生安全教育教程 -
VIP 95折
安全 QR 碼設計方法研究$479$455 -
75折
$404雲攻擊向量 -
75折
$314智能終端安全與實踐:基於OpenHarmony操作系統 -
85折
$652初識密碼學 -
VIP 95折
商用密碼應用技術$414$393 -
75折
$310網絡安全建設與運營 -
85折
$351網絡安全保護制度與實施 -
85折
$351數據安全管理與技術 -
VIP 95折
機密計算:原理與技術$534$507 -
VIP 95折
零基礎快速入行 SOC 分析師, 2/e$359$341 -
85折
$505網絡空間安全與數據治理 -
75折
$449數據要素安全:新技術、新安全激活新質生產力 -
79折
$469網絡安全與決策(數據安全與數字信任) -
75折
$809數據安全 -
85折
$555計算機安全導論(原書第5版) -
85折
$402工控系統信息安全——智能製造背景下的數字化安全保障 -
VIP 95折
密碼芯片設計與實踐$294$279
相關主題
商品描述
《數字身份認證技術與實踐》內容涵蓋身份認證的基礎理論,包括身份認證與授權的區別、常見的認證方式以及關鍵技術和協議,如SAML、OAuth 2.0、OIDC等。除基礎概念外,《數字身份認證技術與實踐》還展示如何在不同的環境中安全地接入和實現身份認證,包括純前端應用、BFF和後端領域服務。同時,《數字身份認證技術與實踐》詳細討論如何在現有應用中集成其他身份認證系統,以及如何實現社交賬號登錄等功能。對於追求深入理解的讀者,《數字身份認證技術與實踐》還準備了一些高級主題,包括在微信小程序中集成認證平臺、GraphQL中的身份認證、單點登錄、統一登出、多因素認證以及OIDC的高級許可模式等內容。《數字身份認證技術與實踐》不僅提供概念性的解釋,還借助豐富的代碼案例,使用多種編程語言(.Net、Java、Node.js)來展示身份認證技術的應用,讓讀者在實踐中加深理解。 《數字身份認證技術與實踐》是為數字化時代的軟件工程師、系統架構師、信息安全專家以及對身份認證感興趣的讀者量身定製的圖書。《數字身份認證技術與實踐》不僅可以幫助讀者建立起身份認證的知識體系,更重要的是教會讀者如何在實際工作中靈活應用這些知識。如果您希望在數字身份認證領域深入發展,或者希望提升應用安全性,那麼《數字身份認證技術與實踐》將是您理想的選擇。
作者簡介
田傑 覆旦大學軟件工程碩士,研究方向為企業信息化。曾經在 DHL、英孚教育任職,目前供職於XX集團中國數字技術部,擔任資深軟件工程師。對身份認證領域有著非常豐富的上手經驗,在知乎等平臺受到較多關註,並通過付費咨詢方式幫助眾多企業解決了他們面臨的身份認證相關問題。
目錄大綱
目 錄
第1部分 身份認證的基礎概念
第1章 什麼是身份認證 2
1.1 身份認證簡介以及和授權的聯系與區別 3
1.1.1 身份認證簡介 3
1.1.2 身份認證與授權的聯系與區別 3
1.2 認證目標對象有哪些 4
1.2.1 機器認證 4
1.2.2 人類認證 6
1.3 認證場景有哪些 7
1.3.1 2A,面向API的身份認證 8
1.3.2 2B,面向企業合作夥伴的身份認證 8
1.3.3 2C,面向客戶的身份認證 9
1.3.4 2D,面向開發者的身份認證 9
1.3.5 2E,面向內部員工的身份認證 9
1.4 常用術語有哪些 10
1.4.1 令牌與會話如何選擇 10
1.4.2 什麼是SAML、OAuth 2.0和OIDC 16
1.4.3 許可類型 21
1.4.4 訪問令牌和身份令牌的區別 28
1.4.5 刷新令牌是什麼 29
1.4.6 什麼是單點登錄 29
1.5 小結 32
第2章 認證機制與相關算法 33
2.1 認證的基本原理,怎麼證明你是誰 33
2.1.1 認證的基本原理 34
2.1.2 常見的身份驗證方法 34
2.2 電腦安全學基礎 38
2.2.1 機密性、完整性和可用性 38
2.2.2 安全機制:哈希與加密 39
2.2.3 非對稱加密在身份認證過程中的應用 40
2.3 常用的算法 42
2.3.1 SHA(重點:SHA256) 42
2.3.2 自適應單向函數 45
2.3.3 RSA 53
2.3.4 常用的簽名算法 55
2.4 JWT結構化令牌詳解 56
2.4.1 頭部 57
2.4.2 載荷 58
2.4.3 簽名 59
2.4.4 動手實驗 60
2.5 小結 62
第3章 認證解決方案 63
3.1 雲解決方案 63
3.1.1 IaaS、PaaS、SaaS與IDaaS 63
3.1.2 多租戶的概念及其實例 64
3.1.3 IDaaS實例 65
3.2 開源解決方案 65
3.2.1 基於Java的Keycloak及其關鍵組件 66
3.2.2 CAS 68
3.2.3 基於.NET Core的Duende IdentityServer 69
3.2.4 基於Node.js的OIDC Server 69
3.3 小結 70
第2部分 身份認證的實戰應用
第4章 純前端應用如何接入身份認證 72
4.1 實例講解 72
4.1.1 準備工作 72
4.1.2 實例演示 72
4.2 安全性分析及應對策略 104
4.2.1 公開客戶端 104
4.2.2 關閉隱式許可流程 105
4.2.3 開啟 PKCE 105
4.3 小結 106
第5章 前端代理服務器如何接入身份認證 107
5.1 BFF架構的演進回顧 107
5.1.1 單體應用架構 107
5.1.2 前後端分離架構 107
5.1.3 BFF架構 108
5.1.4 BFF架構的發展 108
5.2 BFF中的身份認證實現方式 111
5.3 BFF中的身份認證流程 111
5.4 示例代碼 111
5.5 實例講解 112
5.5.1 在Naive BFF中接入認證平臺 112
5.5.2 在TMI BFF中接入認證平臺 112
5.5.3 在Full BFF中接入認證平臺 116
5.6 小結 119
第6章 後端領域服務如何接入身份認證 120
6.1 領域服務和BFF有什麼區別 120
6.2 實例講解 121
6.2.1 在Java Spring Boot應用中接入認證 121
6.2.2 通過Bean方式擴展Spring應用 131
6.2.3 不使用spring-boot-starter-oauth2-resource-server 137
6.3 小結 144
第7章 成熟的產品如何接入身份認證 145
7.1 在自托管GitLab實例中集成Keycloak登錄 145
7.1.1 步驟詳解 145
7.1.2 測試登錄 153
7.1.3 總結 154
7.2 Keycloak互相集成 154
7.2.1 在線演示 154
7.2.2 單點登錄 156
7.2.3 集成步驟 159
7.3 用OIDC方式在Keycloak中集成阿裡雲登錄方式 163
7.3.1 最終效果體驗 163
7.3.2 在阿裡雲RAM訪問控制臺的OAuth應用中創建應用 164
7.3.3 在Keycloak中添加Identity Provider 165
7.3.4 在阿裡雲控制臺回填回調地址 168
7.3.5 在阿裡雲身份管理工作臺創建用戶 168
7.3.6 在Keycloak中給Identity Provider增加Mappers 169
7.3.7 在Keycloak中給Client scopes增加Mappers 170
7.3.8 定製用戶完善資料頁面 172
7.3.9 郵箱驗證 174
7.4 小結 176
第8章 社交登錄實戰 177
8.1 在Keycloak中集成GitHub登錄 177
8.1.1 註冊應用 178
8.1.2 添加GitHub提供者 178
8.1.3 驗證 180
8.2 在IdentityServer中添加GitHub登錄 181
8.2.1 線上體驗 181
8.2.2 準備工作 182
8.2.3 核心代碼 183
8.3 在Duende IdentityServer中集成Epic Games登錄 184
8.3.1 效果演示 185
8.3.2 配置 186
8.3.3 將域名添加到組織中 187
8.3.4 概念 188
8.3.5 創建產品 188
8.3.6 創建客戶端 188
8.3.7 記下客戶端憑據 188
8.3.8 添加回調地址 189
8.3.9 創建應用 189
8.3.10 關聯客戶端 190
8.3.11 填寫法律必需的URL 190
8.3.12 Epic Games的OIDC端點 191
8.3.13 授權 192
8.3.14 獲取令牌 192
8.3.15 典型的響應 192
8.3.16 代碼實現 193
8.3.17 完成 197
8.4 三步開發社交賬號登錄 197
8.4.1 不要自行實現 197
8.4.2 自行實現的一般套路 198
8.4.3 在Keycloak中開發釘釘登錄插件 198
8.5 小結 202
第9章 本部分的總結回顧 203
9.1 對接身份認證的一般套路 203
9.1.1 在身份認證平臺註冊應用 203
9.1.2 在應用中配置身份認證平臺的信息 203
9.1.3 構造OIDC授權請求 204
9.1.4 構造OIDC Token請求 205
9.1.5 使用OIDC Token請求OIDC用戶信息 206
9.1.6 調用退出端點 206
9.1.7 相關故障排除指引 207
9.2 以Keycloak為例做個梳理 209
9.2.1 涉及的請求端點 209
9.2.2 流程圖概覽 210
9.2.3 步驟詳解 210
9.3 以一個集成測試結束 214
9.3.1 添加測試工程 216
9.3.2 添加測試類 217
9.3.3 配置發現 217
9.3.4 登錄授權 218
9.3.5 處理回調以及提取授權碼 219
9.3.6 請求令牌 220
9.3.7 請求用戶信息 220
9.3.8 總結 220
第3部分 高級主題
第10章 如何在微信小程序中集成認證平臺 222
10.1 和Web相比,微信小程序有哪些限制 222
10.2 Web View如何安全地取得小程序的原生身份信息 228
10.3 個人版小程序如何對接身份認證平臺 233
10.4 小結 237
第11章 GraphQL身份認證 238
11.1 GraphQL簡介 238
11.2 在GraphQL中如何實現身份認證 241
11.3 小結 258
第12章 如何實現單點登錄和用戶聯邦 259
12.1 用戶連接與用戶聯邦 260
12.2 單點登錄實戰 264
12.2.1 使用Keycloak打造多個系統間的單點登錄體驗 264
12.2.2 在Strapi中接入單點登錄 268
12.3 用戶聯邦實戰 275
12.3.1 在Keycloak中聯邦LDAP用戶源 275
12.3.2 基於Keycloak實現自定義的聯邦源 291
12.4 在Duende IdentityServer中實現用戶聯邦 296
12.5 小結 300
第13章 如何實現統一登出 301
13.1 僅退出當前應用 301
13.2 退出當前應用和登錄平臺 302
13.2.1 前通道 303
13.2.2 後通道 303
13.3 小結 305
第14章 靈活實現掃碼登錄 306
14.1 基於Spring Security實現公眾號關註即登錄 306
14.1.1 背景和價值 306
14.1.2 Java Spring-Security 307
14.1.3 Open API 307
14.1.4 關註公眾號即登錄的流程設計 307
14.1.5 應用架構設計 310
14.1.6 API First開發方式 311
14.1.7 基於Spring Security實現關註微信公眾號即登錄 311
14.1.8 總結 324
14.2 基於Keycloak的關註微信公眾號即登錄方案 324
14.2.1 好處 325
14.2.2 實現效果預覽 325
14.2.3 基於Keycloak的關註微信公眾號即登錄方案的實施架構 326
14.2.4 具體設計與實現 327
14.2.5 總結 334
14.3 基於Authing.cn的關註微信公眾號即登錄的實現方案 334
14.3.1 最終方案展示 335
14.3.2 關註微信公眾號即登錄的核心要件 336
14.3.3 其他方案及其與Authing.cn方案的對比 337
14.3.4 實現步驟 337
14.3.5 總結 340
14.4 對接微信登錄的三種方式 340
14.4.1 登錄原理概覽 340
14.4.2 三種登錄方式的關鍵步驟 342
14.4.3 總結 343
14.5 小結 344
第15章 多因素身份認證 345
15.1 你所擁有的東西 346
15.1.1 手機(作為令牌) 346
15.1.2 通過短信發送一次性密碼 346
15.1.3 通過電子郵件發送一次性密碼 353
15.1.4 通過原生應用生成一次性密碼 354
15.1.5 通過硬件生成一次性密碼 354
15.1.6 智能卡 354
15.1.7 硬件Fob 354
15.2 你所知道的東西 354
15.2.1 用戶名和密碼 355
15.2.2 PIN 355
15.2.3 安全問題 355
15.3 你本身就是生物識別因素 355
15.3.1 指紋 355
15.3.2 聲紋 355
15.3.3 面部識別 355
15.3.4 虹膜掃描 356
15.3.5 視網膜掃描 356
15.4 小結 356
第16章 設備碼授權流程 357
16.1 對接Keycloak設備碼授權流程 359
16.1.1 源代碼 359
16.1.2 最終效果體驗 359
16.1.3 配置 360
16.1.4 獲取用戶授權碼和設備碼 361
16.1.5 打開瀏覽器並瀏覽verification_uri 363
16.1.6 等待用戶授權 364
16.1.7 輪詢令牌 365
16.1.8 用戶授權成功 367
16.1.9 總結 367
16.2 對接Duende IdentityServer的設備碼授權流程 367
16.2.1 流程概覽 367
16.2.2 準備工作 369
16.2.3 效果演示 370
16.3 在網頁中對接設備碼授權流程 372
16.3.1 相關代碼提交 372
16.3.2 增加獲取XSRF令牌接口 372
16.3.3 測試先行 372
16.3.4 增加接口 374
16.3.5 添加網頁文件和相關的JS 375
16.3.6 本地測試 376
16.3.7 上線測試 377
16.3.8 總結 377
第17章 NONCE模式與令牌交換流程 378
17.1 NONCE模式 378
17.2 令牌交換流程 380
第4部分 身份認證的趨勢與展望
第18章 趨勢與展望 384
18.1 OIDC的新特性 384
18.1.1 JAR 384
18.1.2 PAR 385
18.2 Passkey技術 386
18.3 FIDO 386
18.4 FIDO2和WebAuthn 387
18.5 基於零信任的身份認證 387
18.5.1 核心原則 388
18.5.2 關鍵組件 388
18.5.3 實施步驟 388
18.6 分佈式身份認證 389
18.6.1 去中心化身份標識 390
18.6.2 去中心化PKI體系 390
18.6.3 可驗證憑證 391
18.7 隱私保護和數據安全 391
18.8 AI技術的應用 391
18.9 小結 391
結語 392
參考文獻 393



