Aktuelle Seite:  Aufbau / OpenID

OpenID - Framework für Identitätsmanagement

OpenID Standard

OpenID ist ein offener Standard zur Authentifizierung auf Webseiten und anderen webbasierten Diensten. Das Verfahren setzt dabei das Single sign-on Prinzip um, so dass Nutzer sich nur einmal anmelden müssen und dann verschiedene Dienste ohne erneute Anmeldung nutzen können.

Dabei registriert sich ein Nutzer bei einem OpenID Provider, der die Identitäten seiner Nutzer verwaltet. Falls ein Nutzer sich nun bei einer Webseite einloggen möchte, wird er auf die Seite des OpenID Providers weitergeleitet und kann sich dort authentifizieren. Nach der Authentifizierung erfolgt eine Weiterleitung zurück auf die gewünschte Webseite. Falls der Nutzer bereits bei seinem OpenID Provider angemeldet ist, leitet der OpenID Provider den Nutzer direkt zurück auf die Webseite und stellt die nötigen Informationen bereit, so dass der Nutzer selbst nichts tun muss.

In dem OpenID Standard (Version 2.0) wird ausschließlich festgelegt, wie die OpenID Provider und Websercives (Relying Parties genannt) miteinander kommunizieren und die Weiterleitung des Authentifizierungsvorgangs erfolgt. Dies umfasst ebenfalls das Aushandeln über die Arten der Verbindungen, z.B. ob verschlüsselte Verbindungen genutzt werden.

OpenID Erweiterungen

Neben dem Standard gibt es noch zwei wesentliche Erweiterungen, die in eID Connect beide zur Anwendung kommen:

  • OpenID Attribute Exchange: Diese Erweiterung ergänzt OpenID die Funktion, dass Relying Parties und OpenID Provider Attribute über die Nutzer austauschen können. Das bedeutet, eine Webseite kann gewisse Informationen über den Nutzer anfragen, und der OpenID Server kann diese liefern. In der Praxis wird dies so realisiert, dass der Nutzer dieser Freigabe das erste Mal zustimmen muss, und dann merkt sich der OpenID Server diese Entscheidung für zukünftige Anfragen.

  • OpenID Provider Authentication Policy Extension: Diese Erweiterung befasst sich mit der Stärke des Authentifizierungsverfahrens, also dem Sicherheitslevel des Logins. Dabei gibt es unterschiedliche Stufen, wie z.B. Authentifizierung mit Hilfe von Username/Passwort, bis hin zur Zwei-Faktor-Authentifizierung mit spezieller Krypto-Hardware. In der Praxis wird diese Erweiterung kaum unterstützt, da die meisten Webseiten sich mit dem einfachen Login mit Passwort zufrieden geben und die OpenID Provider keine andere Authentifizierungsmethode benutzen.

In eID Connect wird die Attribute Exchange Erweiterung benutzt, um Daten mit den Relying Parties auszutauschen. Allerdings wurde ein Protokoll festgelegt, so dass qualitative Informationen über die jeweiligen Daten hinzugefügt werden können. So ist es möglich, dass der eID Connect Server mitteilen kann, dass bestimmte Daten durch den nPA verifiziert wurden. An dieser Stelle jedoch wird der Server den Nutzer jedes mal fragen, ob er diese Informationen übermitteln darf.

Auch die Authentication Policy wird unterstützt, da eID Connect zur Anmeldung Hardware-Tokens und den neuen Personalausweis unterstützt.

Entwicklung und Verbreitung

Im Jahre 2005 wurde das Protokoll von Brad Fitzpatrick entwickelt, der bei Six Apart Ltd. angestellt war. In den folgenden beiden Jahren engagierten sich weitere Firmen in dem Projekt durch aktive Entwicklung oder dem Bereitstellen von OpenID Providern, unter anderem Microsoft, AOL und Sun Microsystems. Dies führte 2007 zur Gründung der OpenID Foundation, die den OpenId Standard definiert und weiterentwickelt.

Inzwischen sind weitere Firmen der OpenID Foundation beigetreten, z.B. Facebook, Google, Yahoo und Paypal, die OpenID als Login zu ihren Webseiten integriert haben oder selbst OpenID Provider sind. Im Fall von Facebook heißt dies, dass man sich mit OpenID zu Facebook verbinden kann, allerdings ist deren eigene Schnittstelle "Facebook Connect" (für Like-Buttons und Facebook Apps) bei weitem umfangreicher.

OpenID ist eine viel genutzter Internetstandard, insbesondere bei kleinen Webblogs und Webportalen, aber auch bei den großen Firmen in der OpenID Foundation wird der Standard zumindest teilweise unterstützt. Die Nutzerzahlen werden weltweit über 1 Milliarde (insbesondere durch Googles Gmail) und die Anzahl an Webseiten auf einige Millionen geschätzt.

Sicherheit

Im Lauf der Zeit gab es bei OpenID mehrere Sicherheitsprobleme, die nur teilweise gelöst werden konnten. Beispielsweise ist OpenID anfällig gegen Phishing Attacken, da die Weiterleitung zum Login nicht unbedingt auf der Seite des OpenID Providers landen muss. Weiterhin gab es verschiedene Sicherheitslücken, die ein Angreifer ausnutzen konnte um bestimmte Attribute der Nutzer zu ändern, wie die Email Adresse.

Aufgrund dieser Schwächen wird OpenID meist bei "unkritischen" Anwendungen eingesetzt, zum Beispiel zum Login in Webblogs, der nur zum Erstellen von Kommentaren benötigt wird. Es wird empfohlen OpenID nicht einzusetzen, wenn ein finanzielles Risiko durch die Anwendung besteht.

Eine Möglichkeit, dieses Risiko zu vermindern besteht in der Einschränkung von OpenID auf bekannte Provider und Relying Parties. Insbesondere im Falle, dass Relying Party und OpenID Provider sich gegenseitig erkennen und authentifizieren können, ist der Einsatz von OpenID als verbreiteter Standard zur Kommunikation sinnvoll.