ADFS 和 OAuth 的區別
ADFS(Active Directory Federation Services)和 OAuth 都是身份認證與授權領域的技術,但它們的設計目標、應用場景和實現方式有顯著區別。以下從核心定義、技術特性、應用場景等方面詳細對比:
核心定義與設計目標
技術 | 核心定義 | 設計目標 |
ADFS | 微軟基于 SAML 2.0、WS-Federation 等協議的企業級身份聯邦服務。 | 解決跨組織 / 跨系統的單點登錄(SSO),讓用戶用企業 AD(Active Directory)賬號訪問多個信任的應用(如內部系統、合作方系統)。 |
OAuth 2.0 | 開放標準的授權協議(非認證協議,通常與 OpenID Connect 結合實現認證)。 | 解決第三方應用的授權問題,允許用戶在不暴露賬號密碼的情況下,授權第三方應用訪問其在某平臺的資源(如用 GitHub 賬號登錄第三方工具并授權讀取倉庫)。 |
核心技術差異
1. 協議基礎
- ADFS:
基于 SAML 2.0 或 WS-Federation 協議,
主要使用 XML 格式傳遞身份斷言(Assertion),
包含用戶身份信息(如用戶名、角色)和認證狀態。
例如:企業員工通過 ADFS 登錄合作方系統時,
ADFS 會生成 SAML 斷言,證明 “該用戶是本企業的合法用戶”。
- OAuth 2.0: