跳到主要内容

Oauth

轉載自: OAuth 是什麼? 跟 SSO 有什麼關係或差別? - 技術雜記 Technology Notes - Jack Yu | 傑克

Oauth

  1. Authorization (授權)
  2. third-party application (第三方應用程式)
  3. 資源所有者與HTTP服務之間的批准互動(approval interaction between the resource owner and the HTTP service)

Authorization 是一種授權的概念, 也就是當你登入成功之後, 你被賦予了可以使用多少服務的權限 所以 OAuth 是一種授權框架, 它可以授權其它第三方應用程式取得使用者資料 當然還是要經過使用者允許之後 (approval interaction), 才會授權給第三方取得使用者的資料

SSO

Bob 有一組帳號密碼是在 SomeCSP 這個服務底下,此時 Bob 使用一個在 AnotherCSP 服務底下的應用程式 Bob 想要使用 AnotherCSP 的服務時 必須先透過 SomeCSP 進行登入認證才能使用

這裡有一個重點, 就是 authentication (認證) 當你拿著帳號密碼來登入的時候, 此時就是在做認證, 確認是不是真的是你

總結

OAuth 是一種授權Authorization框架, 而不是認證框架

SSO 是一種認證Authentication的方式, 而不是授權的方式

Authentication 認證

使用者拿著帳號密碼去登入網站, 這叫做認證

Authorization 授權

使用者登入後, 開始依照本身的權限去操作, 這叫做授權