OAuth 2.0: die Clientseite

OAuth, die Zweite


Facebook, Google, Foursquare oder Pinterest haben eines gemeinsam: Die APIs dieser Dienste setzen allesamt auf OAuth 2.0. OAuth 2.0 ist ein Protokoll zur Autorisierung von API-Zugriffen, beispielsweise durch server- oder clientseitige Webanwendungen oder mobile Apps. Trotz des spektakulären Rückzugs von OAuth-2.0-Editor Eran Hammer werden wohl auch in Zukunft mehr und mehr APIs auf dieses Protokoll setzen: OAuth 2.0 hat sich bereits bei den großen Services (Google, Facebook) etabliert und ist im Vergleich zu OAuth1 viel einfacher zu benutzen. Wir betrachten zunächst den wichtigsten OAuth 2.0 Grant, den Authorization Code Grant.

Zugegeben: Der Blog Post, mit dem sich Eran Hammer von der OAuth-2.0-Spezifikation verabschiedet hat [1], war für viele schockierend zu lesen. Als Hauptgrund für seinen Rückzug gibt er „Indecision Making“ an, also das Fehlen von Entscheidungen. Die OAuth-2.0-Spezifikation sei wegen der Mitwirkung zu vieler Parteien zu offen, zu viele Bereiche seien absichtlich ungenau gehalten und diverse Implementierungsmöglichkeiten offen zu halten. Viele dieser Gründe sind im Kern sicherlich richtig. Dennoch bewegt sich die Welt der APIs mit großen Schritten in Richtung OAuth 2.0. OAuth 2.0 ist ein sicheres und gut durchdachtes Protokoll, auch wenn manche sich vielleicht Details besser spezifiziert gewünscht hätten. Und auch wenn die APIs von Goo­gle und Facebook derzeit und vielleicht auch für immer nicht hundertprozentig standardkonform sein werden: OAuth 2.0 – in leicht unterschiedlichen Ausprägungen – ist bereits überall im Einsatz. In diesem Artikel möchte ich nicht allzu lange philosophieren. Fakt ist, dass Kenntnisse über OAuth 2.0 relevanter sind denn je. Egal ob Mobile, klassischer Webclient oder moderne In-Browser-JavaScript/HTML5-App – um den Clientcode zu autorisieren und damit mit Zustimmung des Anwenders auf seine Ressourcen zuzugreifen, benutzt man OAuth 2.0. Und auch wenn die verschiedenen OAuth-2.0-kompatiblen APIs noch leichte Unterschiede aufweisen, so muss man OAuth 2.0 nur einmal aus der Vogelperspektive verstanden haben.

Artikelserie

Teil 1: Authorization Code Grant

Teil 2: Weitere OAuth 2.0 Grants

Teil 3: Implementierung eines OAuth-2.0-Servers anhand des OAuth-2.0-Moduls von Spring Security

Der erste Teil dieser dreiteiligen OAuth-2.0-Serie geht auf die Sicht der OAuth-2.0-Clients ein und stellt Ihnen besonders den allgegenwärtigen OAuth 2.0 Authorization Code Grant vor. Im Laufe dieser Serie werden zahlreiche Codebeisp...

Neugierig geworden?

Angebote für Teams

Für Firmen haben wir individuelle Teamlizenzen. Wir erstellen Ihnen gerne ein passendes Angebot.

Das Library-Modell:
IP-Zugang

Das Company-Modell:
Domain-Zugang