2012-11-13 17 views
13

Dwuetapowa autoryzacja OAuth2 jest używana w aplikacji opartej na przeglądarce, w której poświadczenia klienta nie można ukryć przed publiczną. Trójstronny OAuth2 jest używany przez "Aplikacje Web Server", gdzie jest trzecie połączenie między serwerami. All well described here.Dlaczego 3-legged OAuth2, gdy 2-legged działa tak dobrze?

Pytanie: Po co zajmować się 3 nogami, kiedy 2-nogi wydają się być w porządku?

To więcej pracy zarówno dla dostawcy, jak i klienta. Dlaczego żaden z dużych graczy nie wykonał ruchu i nie usunął 3-nogi?

+0

http://hueniverse.com/2012/07/on-leaving-oauth/ – PeeHaa

+1

aktualizowanie linku ... http://aaronparecki.com/articles/2012/07/29/1/oauth2-simplified – Adrian

Odpowiedz

46

Trzy nogawki nie oznacza pewnego rodzaju aplikacji, jak w "przeglądarce". Three legged oznacza, że ​​aplikacja działa w bezpośrednim imieniu użytkownika. W trzech nogach scenariuszy jest

  1. aplikacja (konsumentów),
  2. użytkownika (właściciela zasobów) i
  3. API (usługodawcy).

W scenariuszach dwunożnych nie ma koncepcji użytkownika. Zazwyczaj ma to związek z rozwiązaniami Application-to-Application. Tam aplikacja (konsument) działa w jej imieniu. Tak w dwóch autoryzacji OAuth istnieje:

  1. aplikacja (konsumentów),
  2. API (usługodawca)

Różnica jest po prostu, że nie ma potrzeby etapu autoryzacji użytkownika w podejściu dwunożnym.

+0

Tak, masz rację. Źle zrozumiałem, co właściwie oznacza "dwuramienny" i "trzy-nóg". Przygotuję nowe pytanie. Udzielę tej odpowiedzi jako poprawnej, ponieważ widzisz mój błąd. –

+0

FYI: http://stackoverflow.com/questions/13387698/why-is-there-an-authorization-code-flow-in-oauth2-when-implicit-flow-works-s –

+0

Dlatego właśnie uwielbiam SO! – Faizan

1

Istnieją 2-legged scenariusze. Na przykład sprawdź dokumentację na temat Google Apps domain-wide delegation of authority. Oczywiście można ich używać tylko w zaufanym środowisku przez superużytkownika kont - w powyższym przykładzie: administrator domeny Google Apps jest super właścicielem wszystkich kont użytkowników domeny, którą administruje.

3 Legged musi być oczywiście używany w otwartym środowisku internetowym. Potrzebna jest zgoda właściciela zasobu na udzielenie dostępu do jego danych aplikacji innej firmy.

+0

Tak , Wymieszałem różne rzeczy. (zobacz http://stackoverflow.com/questions/13369516/why-is-there-3-legged-oauth2-when-2-legged-work-so-well/13384100#comment18284216_13384100) –

+0

FYI: http: // stackoverflow .pl/questions/13387698/why-is-there-an-authorisation-code-flow-in-oauth2-when-implicit-flow-works-s –

Powiązane problemy