首頁 搜尋 我的知識庫
開放授權實戰:OAuth2最新應用場景開發

開放授權實戰:OAuth2最新應用場景開發

作者: 糜鵬程
出版社: 深智數位
出版日期: 2024/06/19
ISBN-13: 9786267383742
書店 1






內容描述


本書介紹了關於OAuth 2及其應用於開放平台,全書共分8章。
  第1章介紹了OAuth 2的四種授權模式,為後續章節奠定基礎。
  第2章簡述開放平台的架構和系統組成,給出開放平台功能的宏觀概念。
  第3章從實戰角度詳細介紹OAuth 2在開放授權系統中的應用,包括流程、參數及四種授權模式的變種。
  第4章討論了OpenID的整合,儘管它不屬於OAuth 2標準,但在開放平台業務中扮演重要角色。
  第5章專注於基於授權碼的授權模式,探討生成回呼地址和code的方法。
  第6章介紹授權過程中使用的加密和簽名算法,以及授權資訊的更新支持。
  第7章比較了不同類型的授權資訊,幫助讀者根據實際情況選擇。
  最後,第8章提供基於Spring Security實現OAuth 2四種標準授權模式的範例程式,供讀者參考。

本書特色

  ★OAuth 2完整詳細說明
  ☆開放平臺架構,API閘道系統
  ★授權模式,獲取code,授權用戶端及密碼模式
  ☆OpenID連接OAuth 2,雪花及Hash演算法、UnionID
  ★授權碼回呼位址實際範例、FaaS介紹
  ☆簽名演算法
  ★授權資料、access_token詳解、JWT實戰
  ☆以Spring Security為基礎的OAuth 2實戰


目錄大綱


第1 章 OAuth 2 概述
1.1 OAuth 2 的定義
1.1.1 官方定義
1.1.2 開放平臺中的定義
1.2 OAuth 2 的四種授權模式
1.2.1 隱式授權模式
1.2.2 授權碼授權模式
1.2.3 授信用戶端密碼模式
1.2.4 授信用戶端模式

第2 章 開放平臺整體架構
2.1 功能架構
2.2 API 閘道系統
2.2.1 API 整體架構
2.2.2 API 閘道與授權系統的關係
2.3 主控台系統
2.3.1 功能概述
2.3.2 主控台系統與授權系統的關係
2.4 服務市場

第3 章 實戰中的授權模式
3.1 授權碼授權模式的應用
3.1.1 獲取code
3.1.2 獲取授權資訊
3.1.3 更新授權資訊
3.2 使用者名稱密碼授權碼授權模式的應用
3.3 授信用戶端密碼模式的應用
3.4 授信用戶端模式的應用
3.4.1 標準授信用戶端模式
3.4.2 自研應用
3.4.3 自研授信用戶端授權
3.5 外掛程式化授權模式的應用
3.5.1 普通應用場景
3.5.2 官方應用場景

第4 章 OpenID 從理論到實戰
4.1 OpenID 概述
4.1.1 OpenID 定義
4.1.2 OpenID 使用流程
4.1.3 OpenID 與OAuth 2
4.2 基於自動增加ID 的OpenID 方案
4.2.1 概述
4.2.2 基於單機模式下自動增加ID 的實現方案
4.2.3 基於雪花演算法的OpenID 生成方案
4.2.4 基於自動增加ID 的OpenID 生成方案總結
4.3 基於Hash 演算法的OpenID 方案
4.3.1 概述
4.3.2 Hash 演算法簡介
4.3.3 使用Hash 函數計算OpenID
4.3.4 基於Hash 演算法的OpenID 方案總結
4.4 基於對稱加密演算法的OpenID 方案
4.4.1 概述
4.4.2 對稱加密演算法簡介
4.4.3 基於對稱加密演算法的OpenID 實踐
4.4.4 基於對稱加密演算法的OpenID 方案總結
4.5 基於嚴格單調函數的OpenID 方案
4.5.1 相關概念
4.5.2 基於嚴格單調函數的OpenID 實踐
4.5.3 基於嚴格單調函數的OpenID 方案總結
4.6 基於向量加法的OpenID 方案
4.6.1 UUID 簡介
4.6.2 基於向量加法的OpenID 實踐
4.6.3 矩陣乘法想法擴充
4.7 OpenID 小結
4.8 UnionID
4.8.1 UnionID 簡介
4.8.2 UnionID 劃分方案
4.8.3 基於自動增加ID 的UnionID 方案
4.8.4 基於Hash 演算法的UnionID 方案
4.8.5 基於對稱加密演算法的UnionID 方案
4.8.6 基於嚴格單調函數的UnionID 方案
4.8.7 基於向量加法的UnionID 方案
4.8.8 UnionID 總結

第5 章 授權碼授權模式回呼位址實戰
5.1 普通回呼位址
5.2 字元替換回呼位址
5.2.1 場景引入
5.2.2 解決方案
5.2.3 基於字元替換的回呼位址方案總結
5.3 自訂函數回呼位址
5.3.1 FaaS 簡介
5.3.2 FaaS 實踐
5.3.3 自訂函數回呼位址實踐
5.4 code 生成方案
5.4.1 基於亂數產生code 方案
5.4.2 解決隨機code 衝突
5.5 code 消費
5.5.1 標準code 消費策略
5.5.2 code消費策略最佳化

第6 章 簽名
6.1 簽名演算法引入
6.2 非對稱加密簡介
6.3 進一步探討簽名演算法
6.4 常見的簽名演算法
6.4.1 非對稱簽名演算法
6.4.2 開放平臺實踐中使用的簽名演算法
6.5 開放平臺簽名實例

第7 章 授權資訊
7.1 access_token 簡介
7.1.1 短生命週期的可更新access_token
7.1.2 短生命週期的無更新access_token
7.1.3 永不過期的access_token
7.2 隨機字元實現
7.2.1 短生命週期的可更新access_token
7.2.2 短生命週期的無更新access_token
7.2.3 永不過期的access_token
7.2.4 基於隨機字元的access_token 方案總結
7.2.5 隨機字元方案的缺陷及防禦
7.3 JWT 實現
7.3.1 JWT 簡介
7.3.2 JWT 簡單實戰
7.3.3 基於JWT 實現的授權資訊
7.3.4 基於JWT 的access_token 方案總結
7.4 許可權套件與Scope
7.4.1 Scope 概念引入
7.4.2 開放平臺中的Scope 實現細節
7.5 SDK

第8 章 基於Spring Security 的OAuth 2 實戰
8.1 隱式授權模式
8.1.1 授權系統的相關實現
8.1.2 開放閘道的相關實現
8.1.3 相關實現的驗證
8.2 授權碼授權模式
8.2.1 授權系統的相關實現
8.2.2 開放閘道的相關實現
8.2.3 相關實現的驗證
8.3 授信用戶端密碼模式
8.3.1 授權系統的相關實現
8.3.2 開放閘道的相關實現
8.3.3 相關實現的驗證
8.4 授信用戶端模式
8.4.1 授權系統的相關實現
8.4.2 開放閘道的相關實現
8.4.3 相關實現的驗證
8.5 四種授權模式總結
8.6 JWT
8.6.1 授權系統的相關實現
8.6.2 開放閘道的相關實現
8.6.3 相關實現的驗證


作者介紹


作者簡介

糜鵬程

  高級工程師,主要負責開放平臺相關的研發工作,對開放平臺中各系統的實現有深入研究,目前維護的開放平臺系統,日活調用量50億左右。






相關書籍

Flag’s 創客‧自造者工作坊 電子電路入門活用篇

TQC+ 創意App程式設計認證指南 App Inventor 2 (第二版)

SEO與網路行銷超級工作術:觸及率翻倍的網站贏家攻略

Notion 打造你的高效數位人生 王者歸來