Ring frei

Datenaustausch (Data Portability) ist mittlerweile ein vielgenutztes Buzz-Word und wird auf unterschiedliche Art und Weisen vollzogen. Ein Konkurrenzkampf zwischen den Protokollen, Spezifikationen und API’s ist in vollem Gange und eine Einigung scheint nicht in Sicht. So arbeiten Facebook, Google und aber auch die Open-Web-Gemeinde an Lösungen, Userdaten auszutauschen und die verschiedenen Services untereinander zu vernetzen. Allen Lösungen liegen dabei die gleichen Problemstellungen zu Grunde:

- Autorisierung und Austausch von Profildaten, also wer ist der User, der meinen Service benutzen möchte?
- Welche Daten dürfen wann und wo verwendet werden?
- Wie ist der User sozial vernetzt?
- Was treiben der User und seine Freunde gerade?

Demnach wird es wohl mal Zeit etwas Licht ins Dunkel zu bringen und die Möglichkeiten vorzustellen, zu evaluieren und (wenn möglich) miteinander zu vergleichen. Aber erstmal, was gibt es eigentlich miteinander zu vergleichen?

Open…

Von den offenen Technologien muss man an dieser Stelle wohl als erstes den Open Stack nennen. Der Open Stack ist eine Sammlung von Technologien, die Authentifizierung (openID), Autorisierung (oAuth), Kontaktaustausch(Portable Contacts) und Anwendungs-Portabilität(Open Social) beschreiben. Dazu gehört auch noch XRDS-Simple, dass für Discovery/’Routing’ zuständig ist. Der Herr Pfefferle hat den open stack mal als OSI-Modell der offenen Standards beschrieben, was ich ganz treffend finde und ich will meinen, dass damit ist ja schonmal eine ganze Menge abgehandelt ist. Und auch wenn der Begriff open stack in Internetzeit gerechnet schon fast aus dem Mittelalter stammt, gibt es bisher kaum vergleichbare Ideen und die dort enthaltenen Spezifikationen werden nach wie vor weiterenwickelt.

Neben den Open Stack-Technologien und Austauschmöglichkeiten rücken derweil die User-Aktivitäten, die plattformübergreifend ausgetauscht werden wollen, in den Vordergrund des Geschehens. Das wird sehr gut mit der (noch im Draft-Zustand befindlichen) Atom-Activity-Extension beschrieben und scheint mir sich zunehmend auch durchzusetzen.

Facebook Connect

Während die offenen Technologien für sich gekapselt sind und es für die einzelnen Probleme jeweils eine für sich geschlossene Lösung gibt, sieht das bei Facebook-Connect schon ganz anders aus. Natürlich gibt es auch hier für die unterschiedlichen Bedürfnisse unterschiedliche Möglichkeiten, die Daten auszutauschen, aber prinzipiell ist FBC eine in sich abgeschlossene API (für mich beim Einlesen eine eierlegende Wollmilch-Api :) ). Das bedeuted, dass der Austausch der unterschiedlichen Daten, nach der Authentifizierung mit dem facebook-eigenen Mechanismus, über ebenso facebook-eigene Technologien, wie die Facebook Markup Language(FBML), die Extended Facebook Markup Language (XFBML), die Facebook Query Language (FQL), eine RESTful Api oder über die Javascript-Library vonstatten geht.

Google Friend Connect

Google Friend Connect ist Googles Versuch in das soziale Web-Geschehen einzugreifen, was ja auch nicht unsinnvoll ist, da ja fast jeder einen Google-Account hat. Zum Datenaustausch setzt Google auch auf die oben schon z.Teil genannten Technologien, wie openID, oAuth, open social, Activity Extension und Portable Contacts (könnte vielleicht auch daran liegen, dass Google den Kram mehr oder weniger entwickelt hat oder zumindest stark beteiligt war).

MyspaceID

Ich wage mal zu behaupten, dass Myspace im großen und ganzen nicht so eine große Rolle in der hier erwähnten Angelegenheit spielt. Da die Jungs und Mädels sich dort aber auch sehr viel Mühe geben erwähne ich es mal der Vollständigkeit halber. Auserdem ist Myspace zwar auf dem absteigenden Ast, hat aber immernoch eine große Nutzer- und Fangemeinde.
MyspaceID ist ein Mittelding aus proprietärer und offener Lösung. Für Autorisierung und Benutzerdatenaustausch an sich wird dort eine eigene API (Javascript und REST) benutzt, während zur Authentifizierung, die Aktivitäten und die Apps je oAuth, die Atom-Extension und open social verwendet wird. Ich kann die Strategie hierbei nicht ganz nachvollziehen und denke, dass Myspace sich mit seiner proprietären MyspaceID statt openID keinen so großen gefallen getan hat, denn wer um Nutzerdaten kämpft sollte vielleicht nicht seine Energie in die Entwicklung eigener SignOn-Technologien stecken, die dann eh niemand implementiert (oder schonmal jemand einen: mit-myspace-einloggen-knopf gesehn?). Nja..Meinungen, Meinungen, Meinungen…..

Update: Wie ich auf Grund des Feedbacks gelernt habe benutzt Myspace komplett den open stack und nicht, wie von mir fehlerhaft dargestellt, eine teils eigene Lösung.

Soweit so gut. Wie unschwer zu erkennen ist kann man also feststellen, dass der Kampf des Datenaustauschs im Großen und Ganzen zwichen den offenen Standards, die eben auch von Google eingesetzt werden, und FacebookConnect abspielt. Dies könnte den Schluss zulassen, dass man sich näher damit beschäftigen müßte, da es ja nur Facebook ist, was offen geschlossen (hihi) agiert. Aber mit 300 Millionen Usern und der Funktion als Datenhub, denn jeder verknüpft ja Twitter, Flickr und Sonstiges mit Facebook, ist dies eine Tatsache, die keinesfalls vernachläßigt werden darf.

…und so gehts dann weiter

Der weiter Plan ist deswegen die Eingangs erwähnten Fragen hinsichtlich Datenqualität und -quantitität, Implementierung(theoretisch, denn ich hab ganz ehrlich keine Zeit spasseshalber mal alles zu implementieren) und Doku, Sicherheit/Transparenz/Usability zu beantworten. Dabei werde ich mich aber wohl auf Facebook vs. Open beschränken.

9 Responses to “Ring frei”

  1. Hallo Snirgel,

    schön dass du dir die Mühe machst und den ganzen technischen “Kruscht” mal vernünftig erklärst ;)

    Zu deinem Text… Ich würde nicht mehr zu tief auf XRDS-Simple eingehen, da der Standard nie mehr als ein Draft (mittlerweile sogar als “expired markiert”) war und mit XRD schon ein Nachfolger fest steht (http://hueniverse.com/xrd/).

    Bei MySpace und Google muss man außerdem differenzieren, da beide sowohl diverse JavaScript/Widget (z.B. Googles FriendConnect) als auch vollwertige OpenID/OAuth Lösungen anbieten.

    MySpaceID ist sogar das Parade-Beispiel des OpenStacks: http://openid.net/2009/04/07/using-openid-to-power-myspaces-open-platform/

    Mittlerweile bieten folgende Provider eine Art OpenStack an:

    * Yahoo: OpenID/OAuth Hybrid Anmeldung + diverse APIs
    * Google: OpenID/OAuth Hybrid Anmeldung + Portable Contacts + diverse APIs
    * MySpace: OpenID/OAuth Hybrid Anmeldung + OpenSocial

    Ich bin gespannt auf deine folgenden Posts und das Resultat deiner Gegenüberstellungen!

  2. snirgel says:

    Hallo Matthias.

    Danke für das Feedback. Na da hab ich wohl anscheinend nicht richtig recherchiert in Sachen MySpace, werde dies dann aber schnellst möglichst korrigieren.

    XRDS-Simple steht nur der Vollständigkeit halber drin, da es mit dem eigentlichen Datenaustausch ja nicht so viel zu tun hat.

    Gut auch, dass du mich an Yahoo erinnerst, die rutschen aus unerfindlichen Gründen bei mir immer unten durch :) .

  3. …spannend ist auch die Tatsache dass Facebook sich letztes Jahr mit David Recordon einen wichtigen Mann aus der Open Web Szene mit ins Boot geholt hat und Thomas Huhns Antwort auf einen T3N Post:

    http://t3n.de/news/webtrends-facebook-twitter-universal-login-openid-262166/#comment-6371

    Es ist vielleicht gar nicht so abwägig dass Facebook demnächst auch eine Art Open Facebook Connect anbietet.

    Die Hoffnung stirbt zu letzt ;)

  4. snirgel says:

    Das wär natürlich super, denn dann müßte man nicht ständig für Facebook eine extra Wurst braten. Nach der gestrigen Lektüre der bisherigen API bin ich allerdings skeptisch, ob das so schnell von statten gehen kann.

    Fände es allerdings auch ziemlich traurig, wenn Mr. Open das bei Facebook nicht voran treiben würde…

  5. Was er (David Recordon) gerade Vorantreibt ist OAuth WRAP… ein Versuch OAuth etwas zu vereinfachen um es auch für JavaScript oder mobile Anwendungen nutzbar zu machen: http://developers.facebook.com/news.php?blog=1&story=350

    Wobei sich die Meinungen über OAuth WRAP auch auseinander gehen: http://hueniverse.com/2009/11/wrap-and-the-demise-of-the-oauth-community/

    Naja… immerhin hat OAuth WRAP die Entwicklung von OAuth 2.0 inspiriert und angeregt.

    Wo wären wir nur ohne offene Standards :)

  6. snirgel says:

    Ich hab gestern mal die Wrap-Spec ein wenig angeschaut und bin nicht richtig schlau draus geworden, aussser das oAuth um einen refresh-token erweitert wurde, der verhindert, dass der User ständig nochmal Username/PW eingeben muss und den Zugriff bestätigen muss.

    Warum und wofür das ganze (ausser die offensichtlichen Gründe) ist mir nicht ganz klar geworden, aber auf jeden Fall wird mir oAuth-Wrap demnächst sicher einen Post wert sein.

  7. [...] mit wem? – Authentifizierung mit FbConnect oder OpenID by snirgel 28 Mar 0 Comments Wie angekündigt werde ich nun heute endlich den “Kampf” eröffnen und dabei die offenen Technologien [...]

Leave a Reply

You must be logged in to post a comment.