Lösung zur OAuthocalypse

Vor einigen Tagen hat Twitter aus Sicherheitsgründen die Authentifikation der eigenen API geändert. Es wurde vom Basic Auth-Verfahren auf OAuth umgestellt. Dieses Verfahren soll deutlich sicherer als seine Vorgänger-Variante sein, denn ab sofort können Twitter-Clients, die über die API auf Twitter zugreifen, sich nicht mehr einfach nur per Passwort in den entsprechenden Account einklinken, so wie es bisher üblich war, sondern die Anwendung muss bei OAuth zunächst im Twitter-Account freigeschaltet werden, bevor sie genutzt werden kann. Dieses Verfahren ähnelt z.B. dem API-Verfahren von Facebook, auch hier muss die entsprechende Anwendung zunächst freigeschaltet werden. Auf diese Art und Weise ist man vor allem vor ungewolltem Passwortdiebstahl bzw. dem Speichern des Passwortes bei Drittanbietern geschützt. Mehr Informationen dazu findet man unter anderem bei Zeit Online.

Dieser Schritt war wohl bereits ab Dezember 2009 bekannt, die Einführung verzögerte sich weiter nach hinten. Aber am 31. August war es dann soweit, die Umstellung wurde nach längerer Parallel-Laufzeit umgesetzt. Das Ganze führte dann zur OAuthocalypse, wie es bereits vor der Umstellung genannt wurde, denn Programme und Anwendungen, die noch nicht auf die neue Twitter API umgestellt wurden, können sich ab sofort nicht mehr in den Twitter-Account einloggen und funktionieren daher schlichtweg nicht mehr. Das betrifft vor allem kleinere Applikationen, die teilweise nur von einem Entwickler oder sehr kleinen Teams gepflegt werden. Größere Twitter-Clients, wie z.B. TweetDeck oder Seesmic, scheinen nicht betroffen zu sein, denn diese haben bereits vor längerer Zeit auf die neue Anmeldung umgestellt.

Doch es gibt eine Lösung für die einsamen Entwickler und sie kann auch teilweise direkt von den Nutzern angewendet werden. So bietet SuperTweet.net den Service an, mittels OAuth ein Passwort nach der alten Basic Auth-Schule zu generieren und so über einen Proxy im betroffenen Twitter-Client genutzt zu werden. Man gaukelt dem Twitter-Client sozusagen vor, dass nach wie vor die Basic Auth-Variante genutzt wird, der entsprechende Proxy leitet einen über OAuth zum Twitter-Client weiter.

In meinem Fall war ein solche Eingriff nötig. Denn seit einiger Zeit nutze ich Pino, einen sehr schönen und schlanken Twitter- und Identi.ca-Client, der zwar in der nächsten Version auch OAuth unterstützen wird, aber aufgrund der Tatsache, dass es nur einen Entwickler gibt, noch nicht veröffentlicht werden konnte.

Zunächst muss man sich bei SuperTweet.net über seinen Twitter-Account anmelden, dieser Schritt erfolgt über den neuen API-Weg OAuth.

Nach dem man seinen Twitter-Account mit dem SuperTweet-Proxy verbunden hat, kann man diesen Zugriff aktivieren. Dazu erstellt man sich dann ein Passwort, welches später als Zugriffspasswort vom „veralteten“ Client genutzt wird.

Pino bietet neben Twitter und identi.ca die Möglichkeit, einen solchen „anderen“ Proxy zu nutzen. Hier kann man einfach seinen normalen Account Namen und das neue Passwort von SuperTweet nutzen. Als Proxy wählt man dann die Adresse http://api.supertweet.net/.

Et voilá: Es funktioniert wieder. Nun kommen die Twitter-Updates wieder ordnungsgemäß im Client an. In diesem Fall dient dies als einfacher Workaround, aber auch für andere kleine Clients, wo man sich bisher noch gar nicht mit OAuth auseinandergesetzt hatte, eine echte Rettung.

Übrigens hat SuperTweet verraten, dass aufgrund der Umstellung auf OAuth, der Dienst nun 5-mal häufiger eingesetzt wird.

PG

Felix

 – Autor des Artikels

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

:alien: :angel: :angry: :annoyed: :left: :right: :blush: :carefree: :cool: :cry: :devil: :laughdevil: :fools: :geek: :hay: :innocent: :laugh: :love: :shock: :offended: :sad: :sick: :unhappy: :silly: :smile: :speechless: :supershock: :-o :teasing: :wink: :zombie: :zzz: :-* xD :nomnomnom: :oh: :ghost: :teddy: :fussball: :ubuntu: :piratenpartei: