OAuth2: Difference between revisions

From
Jump to navigation Jump to search
No edit summary
No edit summary
Line 6: Line 6:


=== Wie Funktioniert es ===
=== Wie Funktioniert es ===

==== Begriffe ====
{|
! Bezeichnung !! Bedeutung
|-
| Client || Anwendung, welche auf die Kontodaten zugreifen möchte
|-
| Resource Owner || Kontoinhaber
|-
| Authorization Server || Autorisierungsdienst des Kontoanbieters
|-
| Resource Server || Kontoanbieter
|}

==== Autorisierung ====
Bevor OAuth verwendet werden kann, muss sich der Client vom Resource Server als ein möglicher OAuth-Client autorisieren lassen. Wie dies geschieht ist nicht in OAuth beschrieben.


<pre>
+--------+ +---------------+
| |--(A)- Authorization Request ->| Resource |
| | | Owner |
| |<-(B)-- Authorization Grant ---| |
| | +---------------+
| |
| | +---------------+
| |--(C)-- Authorization Grant -->| Authorization |
| Client | | Server |
| |<-(D)----- Access Token -------| |
| | +---------------+
| |
| | +---------------+
| |--(E)----- Access Token ------>| Resource |
| | | Server |
| |<-(F)--- Protected Resource ---| |
+--------+ +---------------+
</pre>

*A: Will nun der Client auf ein Konto zugreifen wendet er sich zunächst an den Resource Owner. Der Client erbitte eine Genehmigung, um auf das Konto des Resource Owner(s) zugreifen zu können.

*B: Der Client erhält die Genehmigung.

*C: Der Client erbittet einen Access Token.

*D: Wenn die Genehmigung vom Resource Owner vom Authorization Server akzeptiert wird, sendet dieser den Access Token an den Client zurück.

*E: Der Client beantragt mit dem Access Token die gewünschten Daten vom Resoure Server.

*F: Sollte der Access Token akzeptiert werden, sendet der Resource Server die angefragten Daten zurück.


=== Wo man es findet ===
=== Wo man es findet ===
OAuth in der Version 2 wird verwendet von zu min. folgenden Seiten

*HnyB.me
*bitly
*Facebook
*Formstack
*Foursquare
*GitHub
*Google
*vInstagram
*Hotmail
*Windows Live
*Messenger
*Xbox
*PayPal
*Sina Weibo
*Stripe.com
*Tent.io
*VK
*Veevop
*Yammer
*Yandex


=== Sicherheit ===
=== Sicherheit ===


Line 15: Line 88:
== Weblinks ==
== Weblinks ==
* [http://it-republik.de/php/artikel/So-funktioniert-OAuth2-5081.html So funktioniert OAuth2]
* [http://it-republik.de/php/artikel/So-funktioniert-OAuth2-5081.html So funktioniert OAuth2]
* [http://tools.ietf.org/html/rfc5849 RFC5849]
* [http://tools.ietf.org/html/rfc5849 RFC5849 OAuth 1.0]
* [http://tools.ietf.org/html/rfc6749 RFC6749]
* [http://tools.ietf.org/html/rfc6749 RFC6749 The OAuth 2.0 Authorization Framework]
* [http://tools.ietf.org/html/draft-ietf-oauth-v2-31 IETF]
* [http://tools.ietf.org/html/draft-ietf-oauth-v2-31 IETF]
* [http://en.wikipedia.org/wiki/OAuth Wiki about OAuth]

Revision as of 22:19, 19 December 2012

Was ist OAuth

„OAuth ist ein offenes Protokoll, das eine standardisierte, sichere API-Autorisierung für Desktop-, Web- und Mobile-Applikationen erlaubt.“ <ref>http://de.wikipedia.org/wiki/OAuth</ref>

OAuth wird verwendet, um jemanden einen Zugriff auf ein Konto zu geben, ohne die Zugangsdaten des Kontoinhabers weiterzugeben. Dieser Zugriff kann auf spezielle Daten eingegrenzt sein und ist zeitlich limitiert. Weiter kann der Zugriff jeder Zeit vom Kontoinhaber widerrufen werden.

Wie Funktioniert es

Begriffe

Bezeichnung Bedeutung
Client Anwendung, welche auf die Kontodaten zugreifen möchte
Resource Owner Kontoinhaber
Authorization Server Autorisierungsdienst des Kontoanbieters
Resource Server Kontoanbieter

Autorisierung

Bevor OAuth verwendet werden kann, muss sich der Client vom Resource Server als ein möglicher OAuth-Client autorisieren lassen. Wie dies geschieht ist nicht in OAuth beschrieben.


     +--------+                               +---------------+
     |        |--(A)- Authorization Request ->|   Resource    |
     |        |                               |     Owner     |
     |        |<-(B)-- Authorization Grant ---|               |
     |        |                               +---------------+
     |        |
     |        |                               +---------------+
     |        |--(C)-- Authorization Grant -->| Authorization |
     | Client |                               |     Server    |
     |        |<-(D)----- Access Token -------|               |
     |        |                               +---------------+
     |        |
     |        |                               +---------------+
     |        |--(E)----- Access Token ------>|    Resource   |
     |        |                               |     Server    |
     |        |<-(F)--- Protected Resource ---|               |
     +--------+                               +---------------+
  • A: Will nun der Client auf ein Konto zugreifen wendet er sich zunächst an den Resource Owner. Der Client erbitte eine Genehmigung, um auf das Konto des Resource Owner(s) zugreifen zu können.
  • B: Der Client erhält die Genehmigung.
  • C: Der Client erbittet einen Access Token.
  • D: Wenn die Genehmigung vom Resource Owner vom Authorization Server akzeptiert wird, sendet dieser den Access Token an den Client zurück.
  • E: Der Client beantragt mit dem Access Token die gewünschten Daten vom Resoure Server.
  • F: Sollte der Access Token akzeptiert werden, sendet der Resource Server die angefragten Daten zurück.

Wo man es findet

OAuth in der Version 2 wird verwendet von zu min. folgenden Seiten

  • HnyB.me
  • bitly
  • Facebook
  • Formstack
  • Foursquare
  • GitHub
  • Google
  • vInstagram
  • Hotmail
  • Windows Live
  • Messenger
  • Xbox
  • PayPal
  • Sina Weibo
  • Stripe.com
  • Tent.io
  • VK
  • Veevop
  • Yammer
  • Yandex


Sicherheit

Einzelnachweise

<references />

Weblinks