| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170 |
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 15103 -->
- <!-- Reviewed: no -->
- <sect1 id="zend.openid.introduction">
- <title>Einführung</title>
- <para>
- <classname>Zend_OpenId</classname> ist eine Zend Framework Komponente die eine einfache API für das erstellen von
- OpenID-verwendenden Sites und Identitäts Providern bietet.
- </para>
- <sect2 id="zend.openid.introduction.what">
- <title>Was ist OpenID?</title>
- <para>
- OpenID ist ein Set von Protokollen für Benutzer-zentrierte digitale Identitäts Provider. Diese
- Protokolle erlauben Benutzern online die Erstellung einer Identität, indem ein Identitäts Provider
- verwendet wird. Diese Identität kann auf jeder Seite verwendet werden die OpenID unterstützt. Die
- Verwendung von OpenID-erlaubenden Sites gestattet es Benutzern, das Sie sich traditionelle
- Authentifizierungs Tokens nicht merken müssen, wie Benutzernamen und Passwörter für jede Seite. Alle
- OpenID-erlaubenden Sites akzeptieren eine einzelne OpenID Identität. Diese Identität ist
- typischerweise eine URL. Das kann die URL der persönlichen Seite eines Benutzers sein, ein Blog
- oder eine andere Ressource die zusätzliche Daten zu Ihm liefert. Das bedeutet das ein Benutzer nur
- mehr einen Identifikator für alle Seiten, die er oder Sie benutzt, benötigt. OpenID ist eine offene,
- dezentralisierte und freie Benutzer-zentrierte Lösung. Benutzer können auswählen welcher OpenID
- Anbieter verwendet werden soll, oder sogar Ihren eigenen persönlichen Identitäts Server erstellen.
- Es wird keine zentrale Authorität benötigt um OpenID-erlaubende Sites zuzulassen oder zu registrieren
- noch irgendwelche Identitäts Provider.
- </para>
- <para>
- Für weitere Informationen über OpenId siehe die
- <ulink url="http://www.openid.net/">offizielle OpenID Seite</ulink>.
- </para>
- </sect2>
- <sect2 id="zend.openid.introduction.how">
- <title>Wie funktioniert das ?</title>
- <para>
- Der Zweck der <classname>Zend_OpenId</classname> Komponente ist es das OpenID Authentifizierungsprotokoll zu
- implementieren, wie im folgenden Sequenzdiagramm beschrieben:
- </para>
- <para>
- <inlinegraphic align="center" fileref="figures/zend.openid.protocol.jpg" format="JPEG" scale="100" valign="middle" width="559" />
- </para>
- <orderedlist>
- <listitem>
- <para>
- Authentifizierung wird durch den Endbenutzer initiiert, welcher seinen OpenID Identifikator
- zum OpenID Konsumenten, durch einen User-Agenten, übergibt.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Konsument führt eine Normalisierung und Begutachtung des vom Benutzer gelieferten
- Identifikators durch. Durch diesen Prozess erhält der Benutzer den geforderten Identifikator,
- die URL des OpenID Providers und eine OpenID Protokoll Version.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Konsument führt eine optionale Assoziierung mit dem Provider durch wobei
- Diffie-Hellman Schlüssel verwendet werden. Als Ergebnis haben beide Parteien ein
- übliches "geteiltes Geheimnis" das für das unterschreiben und verifizieren der nachfolgenden
- Nachrichten verwendet wird.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Konsument leitet den Benutzer-Agenten zur URL des OpenID Providers mit einer OpenID
- Authentifizierungs Anfrage weiter.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Provider prüft ob der Benutzer-Agent bereits authentifiziert wurde, und wenn nicht
- bietet er es an.
- </para>
- </listitem>
- <listitem>
- <para>
- Der Endbenutzer gibt das benötigte Passwort an.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Provider prüft ob es erlaubt ist die Identität des Benutzers zum gegebenen Konsumenten
- zu übergeben, und fragt den Benutzer wenn das notwendig ist.
- </para>
- </listitem>
- <listitem>
- <para>
- Der Benutzer erlaubt oder verweigert das übergeben seiner Identität.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Provider leitet den Benutzer-Agenten zum OpenID Konsumenten zurück mit einer
- "Authentifizierung durchgeführt" oder "fehlgeschlagen" Anfrage.
- </para>
- </listitem>
- <listitem>
- <para>
- Der OpenID Konsument verifiziert die vom Provider empfangenen Informationen durch die
- Verwendung des geteilten Geheimnisses das er in Schritt 3 erhalten hat oder durch das
- Senden einer direkten Anfrage zum OpenID Provider.
- </para>
- </listitem>
- </orderedlist>
- </sect2>
- <sect2 id="zend.openid.introduction.structure">
- <title>Zend_OpenId Struktur</title>
- <para>
- <classname>Zend_OpenId</classname> besteht aus zwei Unterpaketen. Das erste ist
- <classname>Zend_OpenId_Consumer</classname> für die Entwicklung von OpenID-verwendenden Servern und der
- zweite ist <classname>Zend_OpenId_Provider</classname> für die Entwicklung von OpenID Servern. Diese sind
- komplett unabhängig voneinander und können separat verwendet werden.
- </para>
- <para>
- Der einzige gemeinsame Code der von diesen Unterpaketen verwendet wird ist die OpenID Simply
- Registry Erweiterung die von der <classname>Zend_OpenId_Extension_Sreg</classname> Klasse implementiert
- wird und ein Set von Hilfs Funktionen die von der <classname>Zend_OpenId</classname> Klasse implementiert
- werden.
- </para>
- <note>
- <para>
- <classname>Zend_OpenId</classname> hat Vorteile davon wenn die
- <ulink url="http://php.net/gmp">GMP Erweiterung</ulink> vorhanden ist. Es sollte
- Angedacht werden die GMP Erweiterung für eine verbesserte Performance einzuschalten wenn
- <classname>Zend_OpenId</classname> verwendet wird.OpenID
- </para>
- </note>
- </sect2>
- <sect2 id="zend.openid.introduction.standards">
- <title>Unterstützte OpenId Standards</title>
- <para>
- Die <classname>Zend_OpenId</classname> Komponente unterstützt die folgenden Stanadards:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- OpenID Authentifizierungs Protokoll Version 1.1
- </para>
- </listitem>
- <listitem>
- <para>
- OpenID Authentifizierungs Protokoll Version 2.0 Entwurf 11
- </para>
- </listitem>
- <listitem>
- <para>
- OpenID Einfache Registrierungs Erweiterung Version 1.0
- </para>
- </listitem>
- <listitem>
- <para>
- OpenID Einfache Registrierungs Erweiterung Version 1.1 Entwurf 1
- </para>
- </listitem>
- </itemizedlist>
- </sect2>
- </sect1>
- <!--
- vim:se ts=4 sw=4 et:
- -->
|