Wie funktioniert OpenID?

Um die Funktionsweise von OpenID besser zu verständlich zu machen, stellen wir hier kurz das traditionelle Login mit Username / Passwort und das OpenID Login gegenüber:

Herkömmliches Login

Jeder User hat eine Reihe von Websites, die er normalerweise täglich beim surfen besucht. Bei jeder einzelnen Seite loggt er sich mit seinem Benutzernamen und dem dazugehörigen Passwort ein, beschäftigt sich eine Weile mit der Seite und loggt sich anschließend wieder aus. Auf jeder Seite das gleiche Spiel. Und jedesmal aus Sicherheitsgründen mit einer anderen Username / Passwort Kombination.

Richtig anstrengend wird es, wenn man einen neuen Account auf einer Website anlegen will. Dann muss man oft eine ganze Reihe Benutzerdaten eingeben, seine Emailadresse verifizieren, also zwischen Browser und Emailclient hin und herspringen usw. Das ist nicht nur zeitaufwändig, sondern man produziert auf diesem Weg auch jede Menge redundante Daten, die nur schwer zu pflegen sind. Man denke nur mal daran seine Emailadresse zu ändern – und dies in 10 verschiedenen Accounts – ein Horror-Szenario für das man sich gut und gerne mal einen halben Tag Zeit nehmen kann.

Jeder, der schon einmal eine Website aufgebaut hat weis, daß die Registrierungshürde das größte Hinderniss ist um an neue User zu kommen. Oft ist eine Anwendung einfach zu erklärungsbedürftig – könnten neue User jedoch einfach mal damit “herumspielen” um zu merken, wie sich das Ganze “anfühlt”, wäre das eis viel schneller gebrochen. Hier greift OpenID und vereinfacht das ganze Procedere erheblich.

Registrieren und Einloggen mit OpenID

OpenID hat den einfachen Grundgedanken, daß sich ein User über eine eindeutige Website-URI identifiziert, die ihm “gehört” und für die er bereits eindeutig identifiziert wurde.

Wie sieht dies praktisch aus? Man registriert – ein letztes Mal – einen Account bei einem OpenID Provider (IdP) und hinterlegt dort die Daten die man potenziell an andere Websites weitergeben will, also z.B. Nickname, Voller Name, Emailadresse, Sprache, Land etc.

Loggt man sich nun beim Start seiner Surf-Session bei seinem IdP ein, so ist man dort authentifiziert und kann alle Websites mit OpenID-Unterstützung wesentlich einfacher benutzen. Besuche ich z.B. das OpenID Directory und möchte für eine der dortigen Seiten ein Voting abgeben oder z.B. meine eigene Seite dort mit der kostenlosen Promotionbox bewerben, dann gebe ich einfach nur meine OpenID ein und sofort kann ich alle Funktionen dieser Website uneingeschränkt benutzen.

Das Gleiche gilt z.B. für Kommentare in Blogs: wenn ich einen interessanten Beitrag finde (z.B. auch auf dieser Seite), logge ich mich mit meiner OpenID ein und kann sofort eine Kommentar abgeben, Fragen stellen usw.

Doch wie funktioniert dies technisch? Die Website (Consumer) schickt beim Login eine Anfrage an den OpenID Provider (IdP). Der Server zeigt eine Seite, auf der man die Anfrage einmalig oder dauerhaft akzeptieren oder ablehnen kann. Man kann hierbei detailliert bestimmen, welche Daten der Consumer erhalten soll und welche nicht.

Akzeptiert man die Datenübergabe, schickt der IdP “SUCCESS” an den Consumer, der den Userstatus daraufhin auf “eingeloggt” ändert.

Beim ersten Besuch einer Consumer-Website wird übrigens vollautomatisch ein neuer Account angelegt, der komplette Registrierungsprozess entfällt. Es sei jedoch erwähnt, daß es auch Websites gibt, denen die derzeit vom OpenID 1.1 Protokoll zur Verfügung gestellten Daten nicht ausreichen. Diese gehen dann meistens den Weg die bereits vorhandenen Daten in das Registrierungsformular voreinzutragen und den Rest dann zur manuellen Eingabe anzubieten.

Zusammengefasst sieht das Szenario einer üblichen Surf-Session jedoch schon wesentlich bequemer aus (wir gehen hierbei davon aus, daß allen Websites dauerhaft eine Freigabe beim IdP erteilt wurde): Der User loggt sich zunächst bei seinem IdP ein und besucht dann nacheinander seine Lieblingswebsites, bei denen er nach Eingabe seiner OpenID “sofort drin ist”. Ohne Anstrengung kann er hierbei mit zwei mühelosen Schritten (Eingabe der OpenID und Anklicken der Bestätigung der Datenweitergabe beim IdP) auch einfach mal neue Angebote testen.

Comments are closed.