Endlich Single-Sign-On mit openID?

Wie wäre es, wenn man nicht für jede neue Anwendung im Web (jedes Forum, jedes Wiki, jedes Portal, jeden Shop…) einen neuen Benutzerzugang einrichten müsste? Jedesmal Benutzerdaten eingeben wie nervig ist das denn! Und wie oft war der gewünschte Benutzername schon vergeben oder das Passwort zu kurz? Die Folge sind vergessene Benutzernamen und Passwörter – mit der Zeit ein kleines Chaos bei den meisten Anwendern.

openIDopenID ist ein dezentrales Single-Sign-On System zur eigenen Identifizierung im Web. Vor 2/3 Monaten war das kam Thema kurz auf und seither sammle ich Informationen für einen Blogpost dazu und verwende mit phpMyID meinen eigenen ID-Server. Nachdem das Thema gerade wieder überall in meinem Feedreader auftaucht, habe ich beschlossen endlich meinen Post zu schreiben. Drei Punkte: Was bringt openID?, Wie funktioniert openID?, und Wie kann man damit loslegen? und natürlich noch eine Ladung Links im folgenden.

Was bringt openID?

Mit einem openID-Account ist es möglich sich im Web zu Authentifizieren. Man legt damit einer Website den eigenen virtuellen Ausweis – die eigene “Identification Card (ID)” vor. Damit entfällt die aufwendige Registrierung, da ja auf dem Ausweis alle wichtigen Daten stehen die eine Person identifizieren. Es gibt sehr viele Anwendungen. Sinnvoll halte ich den Einsatz in öffentlichen Communities, Wikis, Foren und Blogs – generell Seiten an denen man sich bsiher registrieren musste. Damit liese sich zukünftig auch Spam reduzieren.

Wie funktioniert openID?

Man kann sich die Authentifizierung via openID so ähnlich vorstellen, wie die Bezahlung mit einer Bankcard. Wenn man an der Kasse steht ist es wichtig, dass man seine Karte hat und die Pin kennt. Um die Rechnung zu bezahlen gibt man seine Bankcard dem Kassier.  Der fragt nun mit der Karte bei der Bank nach, ob man genügend Geld hat. Die Bank meldet sich und möchte vom Kunden eine Authetifizierung in Form der Pin damit sichergestellt wird, dass kein Missbrauch stattfindet. Wenn die Pin richtig war und du noch Geld auf dem Konto hast, genehmigt die Bank die Überweisung. Simpel, oder?
Analog dazu Authentifiziert man sich an einer Website mit seiner openID (einer URL wie z.B. http://m.zung.us) und seinem Passwort. Wenn man sich an der Website anmelden / einloggen möchte, gibt man dort seine ID ein. Die Website fragt dann beim openID-Server nach, ob der Benutzer bekannt ist. Falls ja muss man dann die Übermittlung der Benutzerdaten mit der Eingabe seines Passwortes genehmigen. Danach liefert der Server die benötigten Daten direkt an die Website und alles ist erledigt.

Einzige Voraussetzung ist natürlich, dass die Website openID unterstützt (genauso wie der Kassier für die bargeldlose Bezahlung ein Bankcard-Terminal haben muss). Seiten die bisher openID unterstützen sind z.B. zoomr, ma.gnolia.com, LiveJournal.com, Wikitravel.com. Außerdem unterstützen AOL und Microsoft openID.

Wie kann man damit loslegen?

Als erstes benötigt man eine openID. In einigen Fällen besitzt man vielleicht schon eine openID, z.B. sobald man einen Livejournal Account hat, oder AOL AIM verwendet. Es gibt inzwischen sehr viele kostenlose openID-Provider wie pip.verisignlabs.com, MyOpenID, claimID. Ich habe alle drei getestet oder auch kostenpflichtige wie …

Wenn man seine eigene URI (z.B. die eigene Domain oder URL des Weblogs) als openID verwenden möchte ist dies recht einfach umzusetzen. Man muss dazu lediglich den verwendeten openID-Server im Header seiner Website / Weblogs eintragen (hier die Anleitung dazu, oder für WordPress als Plugin). Ein weiterer Vorteil dabei ist dass man unabhängig von einem einzelnen Betreiber wird, da man lediglich einen anderen openID Server eintragen kann wenn man möchte.

Wenn man die Daten nicht über einen openID-Provider verwalten möchte, kann man dies auch selbst tun. Ein einfaches PHP-Skript dazu gibt es auf phpMyID, komplizierter ist einen eigenen openID-Server zu installieren.

Um openID wie hier auf mzungu’s zum Kommentieren zu verwenden, gibt es ein WordPress-Plugin. Am meisten Sinn macht es natürlich wenn man sich auf allen Blogs mit openID einloggen kann. Für WordPress wurde die vollständige Integration für zukünftige Versionen vorgeschlagen.

Weiteren Informationen im Web:

(Vielen Dank an Tom und frogpond für einige Links zum Thema.)

Über Cedric Weber

Ich schreibe seit Mai 2003 zu Themen rund um das Web2.0, Enterprise2.0, Social Software, Wikis, Weblogs, online Kollaboration, Instant Messaging, sowie Linux / Ubuntu und Apple. Dazwischen findest du Themen aus meinem Alltag - über Glaube und Spiritualität, Fotografie, Musik und vieles andere.

15 Gedanken zu „Endlich Single-Sign-On mit openID?

  1. schön das du jetzt geschrieben hast! ich verweise dann einfach mal auf dich… bist mir zuvorgekommen ;)

    hm eine frage noch
    ich muss hier nicht meinen namen/email/hpadresse angeben… anscheinend verwendest du das openID plugin und ich bin immer noch gespeichert?
    oder wie muss ich das sehn?

  2. Doch, doch, sollte und funktionierte auch! Nur hab ich es mir verbauert, da ich das Plugin von Will Norris installiert habe und danach zum Test noch das “orginale von verselogic. Damit hat es mir irgendwelche Konfigurationsdaten in meiner DB verspult. Deshalb verweise ich gerade auch nur auf das von Will Norris und werd mich mal ans reparieren begeben, – demnächst.

  3. Bei den OpenId-Providern sollte nicht unerwähnt bleiben, daß es seit wenigen Tagen auch einen Provider nach deutschen Datenschutzbestimmungen mit SSL-verschlüsselten sicheren Verbindungen gibt: MeinGuter.Name

    MeinGuter.Name bietet obendrein eine Linksuche nach der eigenen Person (“sich googeln”) – die Ergebnisse kann man an auf seiner OpenIdentity Page publizieren.

  4. Ist openID wirklich Single Sign On?

    Das würde bedeuten, dass ich mich einmal anmelde, und anschließend nicht mehr. Soweit ich openID verstehe, muss ich mich auf jeder Website separat anmelden – auch wenn die Authentifizierung zentral erfolgt?

  5. @Thomas: würde mich nie im leben bei einer Platform anmelden bei der ich eine Subdomain mit “meinguter.name” bekomme, hört sich einfach doof an, sorry. Naja, aber man kann ja einfach euren openID-Server verwenden. Wenn die Technik stimmt und die Sicherheit stimmen -super. Vielleicht sind ja noch andere Domains in Planung?

    @Frank: Nein, es ist nicht wirklich das was man in Unternehmen unter SSO versteht, schliesslich hat man ja nicht bei allen Websites automatisch einen Account. Allerdings können sich die meisten ipenID-Provider merken an welchen Seiten man sich registriert hat. Sobald man dann einmal am openID-Server Angemeldet ist muß man zumindest an diesen Seiten sein Passwort nicht mehr eingeben. Die Testumgebung ist bisher allerdings noch recht mager. Außer bei einigen einschlägigen Websites und wenigen Blogs habe ich openID in der Praxis selten verwendet.

  6. @mzeecedric: na ja, ist halt wie so vieles Geschmackssache :).

    Aber klar, wir wollen OpenIDs auch noch unter anderen Domains anbieten. Vielleicht hast Du ja ein paar Vorschläge? Wir sind für alles offen!

    Aber bitte per Mail unter th [AT] solution-media [PUNKT] de – sonst liest jemand mit und registriert die Domains gleich – womit das Ziel ja verfehlt wäre :)

  7. @Thomas: ich hätte da noch Umoja.de abzugeben! Umoja = Kiswahili für Einheit, und dass die Swahili domains im Kommen sind wurde hier letztens erwähnt. ^^

    @CG: Alleine dass damit besser Spam bekämpft werden könnte, lockt mich. Aber wer sagt denn, dass sich die Spamservices nicht auch eine Pin holen und dann munter drauf los posten?

  8. @JKE, gute Idee mit deiner Domain, würde ich natürlich sofort verwenden!
    Zu deiner Frage, so genau kenne ich mich auch nicht aus, aber für jeden Blogpost braucht ein Spammer eine openID. Diese muss er bei einem openID-Provider registrieren (aufwändig) und kann sie vermutlich wenig verwenden, da diese eindeutige Kennung via Spamfilter schnell erkannt wird. Weiter kann der Spammer natürlich einen eigenen openID-Server aufsetzen, aber auch da bleibt ihm nichts anderes als verschiedene IDs in Form von Subdomains zu erstellen, die ebenfalls quasi nutzlos wären, da innerhalb kurzer Zeit die gesamte Domain vom Spamfilter gesperrt wäre.

    Größere Gefahr ist dagegen schon das Phishing…

  9. Zu der Diskussion, ob einem die Domain eines Providers gefällt oder nicht wollte ich noch anmerken, dass es durchaus auch die Möglichkeit gibt, die OpenID seines Providers mit Hilfe der so genannten OpenID Delegation zu maskieren:
    Man baut dafür einfach in den <head> seiner eigenen Website folgendes ein:

    <head>
     <link rel=”openid.server” href=”https://my.xlogon.net/server” />
     <link rel=”openid.delegate” href=”http://xlogon.net/boris” />
    </head>

    und schwupps ist die eigene Webseite eine OpenID. Das schöne daran: Wenn man mal den Provider wechseln will, kann man seine ID behalten. In Beispiel oben müssen natürlich die xlogon.net URLs durch die entsprechenden des eigenen Providers ersetzt werden.

  10. @Boris, danke für den Hinweis. Habe auch im Post darauf Hingewiesen. Es hat nicht jeder eine eigene Domain oder weis wie er das einbauen kann… und einfach rein subjektiv “cedricweber.meinguter.name” hört sich einfach blöde an.

  11. @mzeecedric

    sorry, falls ich dich da wiederholt haben sollte. Mir ging es nur darum, explizit und konkret zu zeigen, wie einfach es ist, sich gleichzeitig seinen Wunsch-Namen zu besorgen *und* sich Provider unabhängig zu machen.
     
    Bei uns gäbe es ansonsten verschiedene Vanity Domains schon jetzt. Wir betreiben diese zurzeit “realm/wunschname” und nicht “wunschname.realm”. Da ich nicht zu viel Werbung in deinem Blog machen will, kannst du mich auch gerne anschreiben, falls dich die Liste interessiert.

Schreibe einen Kommentar

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