Vorheriger Artikel Nächster Artikel

Login leicht gemacht: Single-Sign-On mit Facebook, Twitter und dem Open Stack

Aus dem
t3n Magazin Nr. 19

03/2010 - 05/2010

Immer mehr Webdienste erleichtern ihren Nutzern die Anmeldung, indem Sie statt einer langwierigen Registrierung auf den einfachen Login mit „Facebook Connect“ oder „Sign in with Twitter“ setzen. Wir zeigen, wie das funktioniert, welche Vorteile und Risiken sich daraus ergeben und warum es am Ende auf einen „Universal Login“ mit offenen Standards wie OpenID hinauslaufen könnte.

Seit Yahoo im Dezember 2009 ankündigte, „Facebook Connect“ (FB Connect) in die eigenen Plattformen zu integrieren, stellt sich die Frage, ob den Identity-Markt für sich alleine beanspruchen und offene Formate wie OpenID ablösen wird [1]. FB Connect hat sich seit der Veröffentlichung vor etwa einem Jahr rasend schnell zu einer Art de facto Connect-System entwickelt und Konkurrenten wie Google oder MySpace abgehängt.

Der Ablauf eines Facebook-Connect-Logins (siehe Abb. 1) unterscheidet sich nur unwesentlich von einem OpenID-Login (Siehe Abbildung 2): Der User drückt den Button, authentifiziert sich gegenüber Facebook mit Benutzername und Passwort und bestätigt die Verbindung. Abgesehen vom Ablauf der Anmeldung, unterscheiden sich beide Systeme jedoch grundlegend. OpenID ist ein Produkt der Blogosphäre und wurde als Single-Sign-On-System konzipiert, um Bloggern das Kommentieren auf anderen Weblogs zu vereinfachen [2]. Trotz der stetigen Weiterentwicklung, liegt der Fokus von OpenID weiterhin auf dem Anmeldeprozess. Für die Bloggosphäre existieren allerdings auch noch andere Systeme beziehungsweise Schnittstellen. So können WordPress-Nutzer neben OpenID [3] unter anderem FB Connect [4] oder MySpaceID [5] verwenden.

FB Connect könnte man dagegen als logische Weiterentwicklung von OpenID sehen. Facebook nutzt mit FB Connect gezielt seine Vorteile als Social-Network und verbindet den Single-Sign-On mit den drei Grundelementen des Social-Webs:

  • Identity: Die Identität spielt eine wichtige Rolle. Um sich nicht bei jedem Dienst von neuem registrieren und seine Identitäten getrennt pflegen zu müssen, bietet FB Connect Zugriff auf die Facebook-Profil-Daten. Änderungen werden auf alle angeschlossenen Plattformen verteilt.
  • Social Graph: Das Social-Web lebt von Interaktion sowie der Anzahl der User und Kontakte. Das Pflegen dieser Beziehungen ist zeitaufwändig, aber FB Connect verkürzt diesen Prozess, indem man die User der angeschlossenen Plattform mit dem eigenen Facebook-Adressbuch abgleichen kann.
  • Activities: Die Kommunikation im Netz findet sehr verteilt statt. Bilder werden bei Flickr gepflegt, Videos bei Youtube und Artikel im Weblog. Die einzelnen Netzwerke sind aber weitestgehend voneinander abgeschottet und bilden so genannte Datensilos. Mit FB Connects Activity-Stream API kann man diese verteilten Inhalte in Facebook zusammen führen.

FB Connect bietet also gerade für die grundlegenden Bedürfnisse im Social Web eine umfassende Lösung. Schnelles und einfaches Registrieren und Anmelden, einfaches Verwalten des Social Graphs und das Zusammenführen aller Online-Aktivitäten. Mit einer Reichweite von weltweit mehr als 350 Millionen Nutzer [6] ist gerade der letzte Punkt ein nicht zu unterschätzender Anreiz für Anwender, die verteilten Profile mit Facebook zu verbinden und alle Social-Web-Aktivitäten an einer Stelle zu vereinen.

Facebook Connect verbindet den Single-Sign-On mit den Elementen des Social-Web und erlaubt unter anderem die Autentifizierung auf Techcrunch.
Facebook Connect verbindet den Single-Sign-On mit den Elementen des Social-Web und erlaubt unter anderem die Autentifizierung auf Techcrunch.

Aber nicht nur Facebook erfreut sich großer Beliebtheit, ist mindestens genauso erfolgreich wie FB Connect. Was dem Twitter-Login zugute kommt, ist der mittlerweile riesige Kosmos an Diensten, die auf die Twitter-API aufbauen und die im Vergleich zu anderen Systemen relativ simple API.

Der Open Stack

Google, Yahoo! und MySpace setzen für ihre Login-Mechanismen weiterhin auf OpenID. Um mit dem Feature-Set von FB Connect konkurrieren zu können, entwickelte die OpenID-Community den sogenannten Open Stack [7]. Dieser ist eine Wortschöpfung von Joseph Smarr (damals Plaxo) und beschreibt ein Set von lose zusammengefügten offenen Standards, das Entwicklern einen relativ umfassenden Zugriff auf die Daten eines Benutzers bietet. Kerntechnologien des Stacks sind unter anderem OpenID, OAuth und OpenSocial. Die technischen Vorteile gegenüber den proprietären Systemen von Facebook und Twitter sind:

  • Jeder der Standards kann alleinstehend und in Kombination genutzt werden. Dies verkleinert den Entwicklungsaufwand für Spezialfälle. Steigen nachträglich die Anforderungen, kann der Stack nahezu beliebig erweitert werden.
  • Bestehende Informationen und APIs können wiederverwendet und müssen nicht von einem Dienst bereitgestellt werden. Kontakte und Aktivitäten können so von Drittanbietern ausgeliefert und von dem Identity-Provider referenziert werden.
  • Bei Open Stack ist es prinzipiell egal, ob man den Sozialen Graphen über XFN, FoaF oder Portable Contacts importiert oder alle Varianten unterstützt.

Open Stack eignet sich im Gegensatz zu FB Connect oder dem Twitter-Dienst grade durch sein Baukasten-System besonders für spezifische Connect-Lösungen. Ein Online-Shop benötigt beispielsweise nur einen Single-Sign-On kombiniert mit einem Payment Service, wie ihn PayPal mit PayPal ID plant [8].

Offene Standards
OAuth ist ein offenes Protokoll, das eine standardisierte, sichere API-Autorisierung für Web-Anwendungen erlaubt. XFN ist ein Microformat zum Auszeichnen von Freundschaftsbeziehungen über das rel-Attribut (HTML). Portable Contacts ist eine RESTFul API zum Abfragen des Social Graphs. Die Zugriffskontrolle funktioniert über OAuth. FoaF steht für Friend of a Friend und ist eine semantische Auszeichnung von Freundschaftsbeziehungen (XML).

Außerdem verfügt OpenID trotz des Angriffs von FB Connect immer noch über eine große Nutzerschaft und auch OAuth hat sich als Autorisierungsmechanismus für API-Anfragen durchgesetzt. In Kombination schafft der Open Stack einen Zugang zu mehr als einer Milliarde OpenID-Profile – Google, Yahoo, MySpace und Microsoft inbegiffen [9].

Offene Standards vs. Facebook und Twitter

Wie schon erwähnt, unterscheiden sich die diversen Connect-Produkte nur unwesentlich in ihren Leistungen (siehe Tabelle weiter unten) und in ihrer Funktionalität (oft auch als Federated Login oder Delegated Authentication bezeichnet):

  • Der Anwender klickt auf einen Connect Button...
  • er wird zu der entsprechenden Plattform geleitet (alternativ öffnet sich ein Popup oder Layer)...
  • er authentifiziert sich und autorisiert die Anfrage...
  • und wird wieder auf die Ausgangsplattform geleitet

Das heißt, die wesentlichen Unterschiede liegen in der Umsetzung, die sich fast beliebig ändern lässt, ohne den Anwender in seinem Nutzerverhalten einzuschränken. Es besteht also kaum eine Notwendigkeit für Facebook, an einem proprietären Format festzuhalten. Zudem gibt es diverse Anzeichen, die für ein zukünftiges „Open FB Connect“ sprechen. So implementiert Facebook einen OpenID-Login [10] und stellt David Recordon (eine der treibenden Kräfte hinter OpenID) als Open Programs Manger ein. Dieser sucht via Facebook-Nachricht nach „fähigen Entwicklern, die ihm dabei helfen, dass FB Connect in Zukunft offene Standards wie OpenID und OAuth unterstützt.

Service Zugriff auf:
Facebook Connect Identity, Social Graph, Stream
Twitter Auth Identity, Social Graph, Stream (+alle anderen Twitter APIs)
Google OpenID Identity, Social Graph (+alle anderen mit OAuth geschützten APIs)
Yahoo!ID Identity, Social Graph, Stream (+alle anderen mit OAuth geschützten APIs)
MySpaceID Identity, Social Graph, Stream (+alle anderen mit OAuth geschützten APIs)
Google Friend Connect Social Graph + diverse Widgets

Der Einsatz von offenen Standards würde die Reichweite von Facebook erneut drastisch steigern. Mit einem einheitlichen Social Connect würde jede Google ID-, Yahoo!ID-, MySpace ID- oder simple OpenID- Implementierung auch gleichzeitig Facebook unterstützen, was wiederum den Kosten/Nutzen Faktor für eine Social Connect Implementierung auf Client-Seite erhöhen würde.

Ein OpenID-Login mit Google läuft mit nur wenigen Clicks denkbar einfach ab.
Ein OpenID-Login mit Google läuft mit nur wenigen Clicks denkbar einfach ab.

Die Risiken von Connect-Systemen

Neben den diversen Vorteilen von Facebook Connect & Co. bieten der globale, netzwerkunabhängige Social Graph und die Verknüpfung aller sozialen Netzwerke aber auch diverse Risiken:

  • Ein Hacker-Angriff auf den Social-Connect-Provider bedeutet auch den Zugriff auf alle angeschlossenen Netzwerke/Seiten
  • Der Social-Connect-Provider des Vertrauens kann von einer unseriösen Firma übernommen werden
  • Eine Regierung kann sich einfacher Zugriff zu Netzwerkübergreifenden Profil-Informationen erzwingen
  • Der Social-Connect-Provider kann seinen Dienst einstellen

Die Verschmelzung von Social Connector und Social Network birgt zudem noch ein weiteres Risiko. Interessen von Nutzern ändern sich mit zunehmendem Alter oder einem veränderten sozialen Umfeld. Am Beispiel von MySpace erkennt man deutlich, dass eine Community nicht ewig existiert und die Nutzer irgendwann zum nächsten Dienst abwandern. Nutzt man MySpace beispielsweise auch als Social Connector, bindet man sich dauerhaft an das Social Network oder muss mühselig alle angeschlossenen Plattformen mit einem neuen Identity-Provider verbinden.

Open Stack ist zwar keine generelle Lösung für alle Probleme, bietet aber diverse Mechanismen, um einige der genannten Risiken zu entschärfen. OpenID ermöglicht beispielsweise einen relativ einfachen Wechsel des Identity-Providers. Das Prinzip nennt sich Delegation [11] und macht die eigene URL zu einer OpenID, die den Authentifizierungsprozess an einen beliebigen OpenID-Provider delegieren kann. Zudem ließe der Aufbau des Open Stacks eine dezentrale Verwaltung der persönlichen Daten zu. Der Identity-Provider wäre unabhängig von einem Social-Network und könnte trotzdem auf deren Inhalte verweisen. Beispielszenario: Login mit MyOpenID, Kontaktabgleich über Facebook und Activities über Friendfeed. Bei einem der oben genannten Zwischenfälle wären nicht gleich alle Informationen betroffen und die Probleme ließen sich unproblematischer beheben.

Open Stack von Johannes Ernst ist ein Set von offenen Standards.
Open Stack von Johannes Ernst ist ein Set von offenen Standards.

Fazit

Ein einheitlicher Single-Sign-On beziehungsweise Social Connect Standard braucht sicherlich noch seine Zeit, ist aber lange nicht mehr so utopisch wie vor einem Jahr. Es gilt, in Zukunft aus den Problemen der einzelnen Systeme zu lernen und deren Vorteile in ein einheitliches Format zu gießen. Betrachtet man das aktuelle OpenID Board, scheint dieser Prozess schon in vollem Gange zu sein: JanRain, Facebook, Yahoo, Plaxo (Open Stack Relying Party), Google und Microsoft sind darin vertreten [12].

Newsletter

Bleibe immer up-to-date. Sichere dir deinen Wissensvorsprung!

Vorheriger Artikel Zurück zur Startseite Nächster Artikel
Keine Antwort
Deine Meinung

Bitte melde dich an!

Du musst angemeldet sein, um einen Kommentar schreiben zu können.

Jetzt anmelden

Aktuelles aus dem Bereich Twitter
Ende der chronologischen Timeline: Twitter-CEO reagiert auf Unmut der User [Update]
Ende der chronologischen Timeline: Twitter-CEO reagiert auf Unmut der User [Update]

Schon seit Jahren experimentiert Twitter an der Sortierung der Timeline herum. Die chronologische Variante soll langfristig einer algorithmischen Sortierung weichen. CEO Jack Dorsey dementiert jetzt … » weiterlesen

Mehr Vielfalt: Facebook testet Themen-Channels als Ersatz für den News Feed
Mehr Vielfalt: Facebook testet Themen-Channels als Ersatz für den News Feed

Das Social Network könnte mit themenbasierten Feeds seinen zentralen Feed ersetzen. Facebook testet außerdem einen neuen Marktplatz. » weiterlesen

Facebook-Zentrale in Hamburg angegriffen: Unbekannte randalieren in der Neustadt
Facebook-Zentrale in Hamburg angegriffen: Unbekannte randalieren in der Neustadt

Die Details sind bislang noch unklar, fest steht aber: In der Nacht zum Sonntag haben Unbekannte an der Facebook-Zentrale in Hamburg randaliert. Verletzt wurde bei dem Vorfall niemand. » weiterlesen

Alle Hefte Jetzt abonnieren – für nur 35 €

Kennst Du schon unser t3n Magazin?