OAuth 2.0 從入門到實戰:利用驗證和授權守護 API 的安全
周建毅(Miles)
- 出版商: 博碩
- 出版日期: 2022-12-16
- 定價: $600
- 售價: 7.8 折 $468
- 語言: 繁體中文
- 頁數: 320
- 裝訂: 平裝
- ISBN: 6263333189
- ISBN-13: 9786263333185
-
相關分類:
網站伺服器 Web-server
銷售排行:
🥉 2023/2 繁體中文書 銷售排行 第 3 名
🥇 2023/1 繁體中文書 銷售排行 第 1 名
🥈 2022/12 繁體中文書 銷售排行 第 2 名
立即出貨 (庫存 > 10)
買這商品的人也買了...
-
領域驅動設計:軟體核心複雜度的解決方法 (Domain-Driven Design: Tackling Complexity in the Heart of Software)$680$530 -
重構|改善既有程式的設計, 2/e (繁中平裝版)(Refactoring: Improving The Design of Existing Code, 2/e)$800$632 -
軟體架構原理|工程方法 (Fundamentals of Software Architecture: A Comprehensive Guide to Patterns, Characteristics, and Best Practices)$680$537 -
Kent Beck 的測試驅動開發:案例導向的逐步解決之道 (Test-Driven Development: By Example)(TDD)$560$437 -
重新認識 Vue.js:008天絕對看不完的 Vue.js 3 指南$600$468 -
內行人才知道的系統設計面試指南$580$458 -
跟著 Docker 隊長,修練 22天就精通 - 搭配 20小時作者線上教學,無縫接軌 Microservices、Cloud-native、Serverless、DevOps 開發架構$880$695 -
Web 應用系統安全|現代 Web 應用程式開發的資安對策 (Web Application Security)$580$458 -
ASP.NET Core 6 實戰守則:超易懂的跨平台開發入門教學 (iT邦幫忙鐵人賽系列書)$600$468 -
ASP.NET Core 工程師不可不知的 10大安全性漏洞與防駭方法$690$538 -
Web API 設計原則|API 與微服務傳遞價值之道 (Principles of Web API Design: Delivering Value with APIs and Microservices)$520$411 -
今晚來點 Web 前端效能優化大補帖:一次搞定指標 × 工具 × 技巧,打造超高速網站(iThome鐵人賽系列書)$650$507 -
玩真的!Git ✕ GitHub 實戰手冊 - coding 實境、協同開發、雲端同步, 用最具臨場感的開發實例紮實學會! (Git for Programmers)$580$458 -
Google 的軟體工程之道|從程式設計經驗中吸取教訓 (Software Engineering at Google)$880$695 -
你就是不寫測試才會沒時間:Kuma 的單元測試實戰 -- Java篇(iThome鐵人賽系列書)$650$507 -
軟體架構指標|改善架構品質的案例研究 (Software Architecture Metrics: Case Studies to Improve the Quality of Your Architecture)$580$458 -
大話 AWS 雲端架構:雲端應用架構圖解輕鬆學, 3/e$650$507 -
不可不知的 Docker 開發部署實戰筆記:網站工程師一定要會的 8大核心能力$620$484 -
看完這本就會懂!帶你無痛提升 JavaScript 面試力:精選 55道前端工程師的核心問題 × 求職加分模擬試題解析$680$530 -
和艦長一起 30 天玩轉 GitLab【第二版】(iT邦幫忙鐵人賽系列書)$650$507 -
大話設計模式:JAVA 風雲再起彩色加強版$880$695 -
敏捷升級:28個提升敏捷成效的關鍵原則 (More Effective Agile: A Roadmap for Software Leaders)$650$507 -
ASP.NET Core 6 框架揭秘:跨平台 Web 開發全面解析 (上冊)$820$640 -
ASP.NET Core 6 框架揭秘:跨平台 Web 開發全面解析 (下冊)$860$671 -
Hacking APIs|剖析 Web API 漏洞攻擊技法$580$458
相關主題
商品描述
- Web 平台已是現今網路生態不可或缺的一部分。當建立新的應用程式時,可能會想要取得使用者在其他平台上的資訊,但這個過程充滿了許多資安風險。身為程式與架構的開發團隊,該如何使用正確的技術,來保護應用程式和使用者呢?
本書將會介紹目前最穩定的兩個協定:OAuth 2.0 與 OpenID Connect 的完整流程以及實作。此外,本書在一開始也會介紹身分驗證與授權的基本元素,讓讀者能夠輕鬆理解協定設計的基本原理,而不再是一知半解。
漸進式學習主題
● 了解身分驗證概論以及 Web 基礎
基礎是非常重要的,在 OAuth 2.0 上更是如此。從身分驗證概論、HTTP 協定的特性、演算法的基礎,接著延伸到身分驗證的實作,這些都是後續理解協定須具備的前置技能。
● OAuth 2.0 與擴充協定的介紹
本書將整理官方協定,並按適合初學者學習的順序來安排章節。其中包括 OAuth 2.0 的四種基本授權流程、原生應用程式與瀏覽器應用程式的授權流程,以及 OpenID Connect 的三種身分驗證流程,已涵蓋大多數的身分驗證與授權情境。讀者可依實務遇到的情境來選擇適合的流程參考。
● OAuth 2.0 實戰練習
了解協定後,接著以實作來證明協定的可行性。應用程式的部分,OAuth 2.0 會以 Facebook 為例,OpenID Connect 會以 LINE Login 為例來說明實作的過程;授權伺服器端則是以開源的服務 Hydra 為例,來介紹實際身分驗證與授權中心會需要處理的任務為何。
本書特色
☑ 參考公開標準和協定撰寫成章
☑ 循序介紹 OAuth 2.0 基本原理
☑ 豐富前導知識及相關補充主題
☑ 身分驗證系統實作經驗分享
目標讀者
・網頁前端工程師
・網頁後端工程師
專業推薦
作者從 Web 的生命週期,再進入到 OAuth2 的實作,自始至終都是圍繞著 RFC 協議講解,可以讓我們清楚的知道為什麼要這樣實作,最讓我欽佩的是,只要我們在討論 Http/Web 相關問題,他總是能信手捻來一組 RFC 編號,精準的對齊設計。不論你是使用甚麼語言,熟讀完本書後,我相信會讓你對於系統架構設計上有實質的幫助。
—— 余小章|部落格「余小章 @ 大內殿堂」版主
我非常喜歡書裡 Miles 的細心,除了提供讀者翻譯精準的專有名詞中英對照外,在說明協定細節時,也在註腳標記了原始規格文件的章節。而更讓我佩服的是 Miles 在說明 Auth 流程時,會將 Client 與 Server 的往返整理成時序圖,在閱讀理解上有很大的幫助。書中的細節再再顯示 Miles 紮實的功夫,以及拳拳到位的詮釋能力。
—— 范聖佑|Laravel 道場、LaravelConf Taiwan 創辦人/JetBrains 技術傳教士
Miles 在這本書中用各種淺白的比喻,來解釋身分驗證與授權內許多複雜的概念。像是第一章,使用社區大樓裡保全的比喻,來說明「識別」的概念。第五章提到 OAuth 2.0 與 OpenID Connect 時,還透過故事的方式,讓讀者可以更身歷其境的理解授權系統實作的目的,以及要解決的問題。
—— 趙家笙(Recca Chao)|Taiwan Kotlin User Group 管理員
作者簡介
- 周建毅 (Miles)
約十年的 PHP 開發經驗,也是 Laravel 框架的愛好者。
於 2016 年任職於一零四資訊科技公司後,開始進入實作身分驗證的團隊。實作過程發現身分驗證相關知識不足,因此開始閱讀文件,並經歷許多設計經驗後,才打造出可用的身分驗證核心。
該著作的源起,主要是想將當初閱讀文件所遇到的阻礙,與設計架構及實作踩的雷,轉換成可分享的知識庫,讓有相同需求的讀者,能夠用更簡單的方法入門實作 OAuth 2.0 與 OpenID Connect,同時也能讓網路上的應用程式更加地安全可靠。
目錄大綱
- 推薦序一:開發一定會碰到身分驗證
推薦序二:簡單但不簡單的 Auth 開發
推薦序三:RFC 汪洋中的一盞明燈
序言
CHAPTER 01 身分驗證與授權
1-1 識別
1-2 驗證
1-3 授權
1-4 歸責
1-5 章節回顧
CHAPTER 02 HTTP協定
2-1 HTTP 的特性
2-2 Cookie 機制
2-3 SSL∕TLS
2-4 章節回顧
CHAPTER 03 密碼學
3-1 加密與解密
3-2 雜湊
3-3 訊息驗證碼
3-4 數位簽章
3-5 亂數
3-6 章節回顧
CHAPTER 04 實作 Web 身分驗證
4-1 身分驗證
4-2 JWT
4-3 狀態保存
CHAPTER 05 OAuth 2.0 與 OpenID Connect 簡介
5-1 OAuth 2.0 情境劇
5-2 OAuth 2.0 與 OpenID Connect 能做什麼?
5-3 OAuth 2.0 與 OpenID Connect「不能」做什麼?
5-4 本章重點
CHAPTER 06 OAuth 2.0 授權協定
6-1 OAuth 2.0 的角色
6-2 Access Token 與 Refresh Token
6-3 快速建構 OAuth 2.0 應用程式
6-4 註冊應用程式
6-5 授權碼流程
6-6 隱含授權
6-7 密碼驗證授權
6-8 應用程式憑證授權
6-9 使用 Refresh Token 換發 Access Token
6-10 Token 如何使用、驗證與撤銷?
6-11 我應該使用哪個 OAuth 2.0 授權類型?
6-12 其他注意事項
CHAPTER 07 其他應用程式類型的授權流程
7-1 Proof Key for Code Exchange 擴充協定
7-2 原生應用程式的授權流程
7-3 瀏覽器應用程式的授權流程
CHAPTER 08 OpenID Connect 身分驗證協定
8-1 完成身分驗證與完成授權的差異
8-2 OpenID Connect 與 OAuth 2.0 的比較
8-3 身分驗證流程
8-4 Prompt 參數用法
8-5 登出流程
8-6 第三方啟動登入
8-7 OP 與應用程式的相關資訊定義
CHAPTER 09 應用程式端的實務範例
9-1 透過 OAuth 2.0 協定請求 Facebook 授權
9-2 透過 OpenID Connect 協定請求 LINE Login 身分驗證
CHAPTER 10 授權伺服器的實務範例
10-1 Hydra 簡介
10-2 Hydra 的流程定義
10-3 建構 Hydra 與相關服務
10-4 總結
APPENDIX A 規範參考文件
APPENDIX B 專有名詞參考
APPENDIX C 縮寫名詞參考























