Browse Source

[DOCUMENTATION] German:

- sync up to r15897

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@15917 44c647ce-9c0f-0410-b52a-842ac1e357ba
thomas 16 years ago
parent
commit
faf310a131
33 changed files with 866 additions and 781 deletions
  1. 90 88
      documentation/manual/de/module_specs/Zend_Auth.xml
  2. 52 49
      documentation/manual/de/module_specs/Zend_Auth_Adapter_DbTable.xml
  3. 53 43
      documentation/manual/de/module_specs/Zend_Auth_Adapter_Digest.xml
  4. 155 131
      documentation/manual/de/module_specs/Zend_Auth_Adapter_Http.xml
  5. 467 442
      documentation/manual/de/module_specs/Zend_Auth_Adapter_Ldap.xml
  6. 1 1
      documentation/manual/de/module_specs/Zend_Feed-ConsumingAtom.xml
  7. 1 1
      documentation/manual/de/module_specs/Zend_Feed-ConsumingAtomSingle.xml
  8. 1 1
      documentation/manual/de/module_specs/Zend_Feed-ConsumingRss.xml
  9. 1 1
      documentation/manual/de/module_specs/Zend_Feed-CustomFeed.xml
  10. 1 1
      documentation/manual/de/module_specs/Zend_Feed-FindFeeds.xml
  11. 1 1
      documentation/manual/de/module_specs/Zend_Feed-Importing.xml
  12. 1 1
      documentation/manual/de/module_specs/Zend_Feed-ModifyingFeed.xml
  13. 1 1
      documentation/manual/de/module_specs/Zend_File_Transfer-Filters.xml
  14. 1 1
      documentation/manual/de/module_specs/Zend_File_Transfer-Introduction.xml
  15. 1 1
      documentation/manual/de/module_specs/Zend_File_Transfer-Migration.xml
  16. 1 1
      documentation/manual/de/module_specs/Zend_File_Transfer-Validators.xml
  17. 1 1
      documentation/manual/de/module_specs/Zend_Filter-Decryption.xml
  18. 1 1
      documentation/manual/de/module_specs/Zend_Filter-Encryption.xml
  19. 1 1
      documentation/manual/de/module_specs/Zend_Filter-FilterChains.xml
  20. 1 1
      documentation/manual/de/module_specs/Zend_Filter-Inflector.xml
  21. 1 1
      documentation/manual/de/module_specs/Zend_Filter-LocalizedToNormalized.xml
  22. 1 1
      documentation/manual/de/module_specs/Zend_Filter-NormalizedToLocalized.xml
  23. 1 1
      documentation/manual/de/module_specs/Zend_Filter-RealPath.xml
  24. 1 1
      documentation/manual/de/module_specs/Zend_Filter-Set.xml
  25. 1 1
      documentation/manual/de/module_specs/Zend_Filter-WritingFilters.xml
  26. 1 1
      documentation/manual/de/module_specs/Zend_Filter_Input.xml
  27. 1 1
      documentation/manual/de/module_specs/Zend_Form-Elements.xml
  28. 1 1
      documentation/manual/de/module_specs/Zend_Form-Forms.xml
  29. 1 1
      documentation/manual/de/module_specs/Zend_Form-I18n.xml
  30. 1 1
      documentation/manual/de/module_specs/Zend_Form-Introduction.xml
  31. 1 1
      documentation/manual/de/module_specs/Zend_Form-QuickStart.xml
  32. 1 1
      documentation/manual/de/module_specs/Zend_Form-StandardElements.xml
  33. 22 1
      documentation/manual/de/module_specs/Zend_Locale-Functions.xml

+ 90 - 88
documentation/manual/de/module_specs/Zend_Auth.xml

@@ -1,13 +1,13 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15845 -->
+<!-- EN-Revision: 15861 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.introduction">
 
     <title>Einführung</title>
 
     <para>
-        <classname>Zend_Auth</classname> bietet eine API für das Authentifizieren und enthält
-        konkrete Authentifizierungs-Adapter für übliche Use Case Szenarien.
+        <classname>Zend_Auth</classname> bietet eine <acronym>API</acronym> für das Authentifizieren
+        und enthält konkrete Authentifizierungs-Adapter für übliche Use Case Szenarien.
     </para>
 
     <para>
@@ -40,13 +40,14 @@
 
         <para>
             Ein <classname>Zend_Auth</classname> Adapter wird verwendet um sich gegenüber einem
-            speziellen Typ von Authentifizierungs Services zu authentifizieren, wie LDAP, RDBMS,
-            oder Datei-basierenden Speichern. Verschiedene Adapter besitzen leicht unterschiedliche
-            Optionen und Verhaltensweisen, aber einige grundlegende Dinge sind für
-            Authentifizierungs Adapter üblich. Zum Beispiel das die Authentifizierung Zeugnisse
-            akzeptiert werden (enthält auch vorgegebene Identitäten), das Abfragen am
-            Authentifizierungsservice durchgeführt werden, und das Ergebnisse zurückgegeben werden,
-            sind für <classname>Zend_Auth</classname> Adapter üblich.
+            speziellen Typ von Authentifizierungs Services zu authentifizieren, wie
+            <acronym>LDAP</acronym>, <acronym>RDBMS</acronym>, oder Datei-basierenden Speichern.
+            Verschiedene Adapter besitzen leicht unterschiedliche Optionen und Verhaltensweisen,
+            aber einige grundlegende Dinge sind für Authentifizierungs Adapter üblich. Zum Beispiel
+            das die Authentifizierung Zeugnisse akzeptiert werden (enthält auch vorgegebene
+            Identitäten), das Abfragen am Authentifizierungsservice durchgeführt werden, und das
+            Ergebnisse zurückgegeben werden, sind für <classname>Zend_Auth</classname> Adapter
+            üblich.
         </para>
 
         <para>
@@ -65,8 +66,9 @@
             Das folgende ist ein Beispiel eines Authentifierungs-Adapters der einen Benutzernamen
             und ein Passwort für die Authentifizierung benötigt. Andere Details, wie zum Beispiel
             der Authentifizierungs-Service abgefragt wird, werden der Kürze halber ausgelassen:
+        </para>
 
-            <programlisting language="php"><![CDATA[
+        <programlisting language="php"><![CDATA[
 class MyAuthAdapter implements Zend_Auth_Adapter_Interface
 {
     /**
@@ -93,6 +95,7 @@ class MyAuthAdapter implements Zend_Auth_Adapter_Interface
 }
 ]]></programlisting>
 
+        <para>
             Wie im Docblock angegeben, muß <methodname>authenticate()</methodname> eine Instanz von
             <classname>Zend_Auth_Result</classname> (oder einer von
             <classname>Zend_Auth_Result</classname> abgeleiteten Klassen) zurückgeben. Wenn aus
@@ -115,45 +118,46 @@ class MyAuthAdapter implements Zend_Auth_Adapter_Interface
             <classname>Zend_Auth_Result</classname> Objekt bei der Erstellung, so das die folgenden
             vier Methoden ein grundsätzliches Set von Benutzerbezogenen Operationen bieten die für
             die Ergebnisse von <classname>Zend_Auth</classname> Adapter üblich sind:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        <methodname>isValid()</methodname> - Gibt true zurück wenn und nur wenn das
-                        Ergebnis einen erfolgreichen Authentifizierungs-Versuch repräsentiert
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <methodname>getCode()</methodname> - Gibt einen konstanten
-                        <classname>Zend_Auth_Result</classname> Identifizierer damit der Typ des
-                        Authentifizierungs-Fehlers, oder des Erfolgs der stattgefunden hat,
-                        ermittelt werden kann. Das kann in Situationen verwendet werden in denen der
-                        Entwickler die verschiedenen Ergebnistypen der Authentifizierung
-                        unterschiedlich behandeln will. Das erlaubt es dem Entwickler zum Beispiel
-                        detailierte Statistiken über die Authentifizierungs-Ergebnisse zu erhalten.
-                        Eine andere Verwendung dieses Features ist es spezielle, benutzerdefinierte
-                        Nachrichten anzubieten, um Benutzern eine bessere Usability zu ermöglichen,
-                        einfach dadurch das Entwickler dazu aufgerufen sind die Risiken solche
-                        defailierte Informationen Benutzern anzubieten, statt einer generellen
-                        Nachricht eines Authentifizierungs-Fehlers. Für weitere Informationen siehe
-                        die Notiz anbei.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <methodname>getIdentity()</methodname> - Gibt die Identität des
-                        Authentifizierungs-Versuchs zurück
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <methodname>getMessages()</methodname> - Gibt ein Array von Nachrichten
-                        zurück nach einem fehlgeschlagenen Authentifizierungs-Versuch
-                    </para>
-                </listitem>
-            </itemizedlist>
         </para>
 
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <methodname>isValid()</methodname> - Gibt true zurück wenn und nur wenn das
+                    Ergebnis einen erfolgreichen Authentifizierungs-Versuch repräsentiert
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getCode()</methodname> - Gibt einen konstanten
+                    <classname>Zend_Auth_Result</classname> Identifizierer damit der Typ des
+                    Authentifizierungs-Fehlers, oder des Erfolgs der stattgefunden hat,
+                    ermittelt werden kann. Das kann in Situationen verwendet werden in denen der
+                    Entwickler die verschiedenen Ergebnistypen der Authentifizierung
+                    unterschiedlich behandeln will. Das erlaubt es dem Entwickler zum Beispiel
+                    detailierte Statistiken über die Authentifizierungs-Ergebnisse zu erhalten.
+                    Eine andere Verwendung dieses Features ist es spezielle, benutzerdefinierte
+                    Nachrichten anzubieten, um Benutzern eine bessere Usability zu ermöglichen,
+                    einfach dadurch das Entwickler dazu aufgerufen sind die Risiken solche
+                    defailierte Informationen Benutzern anzubieten, statt einer generellen
+                    Nachricht eines Authentifizierungs-Fehlers. Für weitere Informationen siehe
+                    die Notiz anbei.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getIdentity()</methodname> - Gibt die Identität des
+                    Authentifizierungs-Versuchs zurück
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getMessages()</methodname> - Gibt ein Array von Nachrichten
+                    zurück nach einem fehlgeschlagenen Authentifizierungs-Versuch
+                </para>
+            </listitem>
+        </itemizedlist>
+
         <para>
             Ein Entwickler kann wünschen basierend auf dem Typ des Authentifizierungs-Ergebnisses zu
             verzweigen um spezialisiertere Operationen durchzuführen. Einige Operationen die für
@@ -162,8 +166,9 @@ class MyAuthAdapter implements Zend_Auth_Adapter_Interface
             nicht existierende Identitäten angegeben wurden und das anbieten von speziellen,
             benutzerdefinierten Nachrichten für Authentifizierungs-Ergebnisse an den Benutzer. Die
             folgenden Ergebniscodes sind vorhanden:
+        </para>
 
-            <programlisting language="php"><![CDATA[
+        <programlisting language="php"><![CDATA[
 Zend_Auth_Result::SUCCESS
 Zend_Auth_Result::FAILURE
 Zend_Auth_Result::FAILURE_IDENTITY_NOT_FOUND
@@ -172,13 +177,12 @@ Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID
 Zend_Auth_Result::FAILURE_UNCATEGORIZED
 ]]></programlisting>
 
-        </para>
-
         <para>
             Das folgende Beispiel zeigt wie ein Entwickler anhand des Ergebniscodes verzweigen
             könnte:
+        </para>
 
-            <programlisting language="php"><![CDATA[
+        <programlisting language="php"><![CDATA[
 // Innerhalb von AuthController / loginAction
 $result = $this->_auth->authenticate($adapter);
 
@@ -202,8 +206,6 @@ switch ($result->getCode()) {
 }
 ]]></programlisting>
 
-        </para>
-
     </sect2>
 
     <sect2 id="zend.auth.introduction.persistence">
@@ -217,9 +219,9 @@ switch ($result->getCode()) {
         </para>
 
         <para>
-            Trotzdem ist HTTP ein statusloses Protokoll, und Techniken wie Cookies und Sessions
-            wurden entwickelt um Stati über mehrere Anfragen hinweg in Server-seitigen Web
-            Anwendungen zu erhalten.
+            Trotzdem ist <acronym>HTTP</acronym> ein statusloses Protokoll, und Techniken wie
+            Cookies und Sessions wurden entwickelt um Stati über mehrere Anfragen hinweg in
+            Server-seitigen Web Anwendungen zu erhalten.
         </para>
 
         <sect3 id="zend.auth.introduction.persistence.default">
@@ -228,15 +230,15 @@ switch ($result->getCode()) {
 
             <para>
                  Standardmäßig bietet <classname>Zend_Auth</classname> dauerhafte Speicherung der
-                 Identität eines erfolgreichen Authentifizierungs Versuches durch Verwendung der PHP
-                 Session. Bei einem erfolgreichen Authentifizierungs Versuch speichert
-                 <classname>Zend_Auth::authenticate()</classname> die Identität des
+                 Identität eines erfolgreichen Authentifizierungs Versuches durch Verwendung der
+                 <acronym>PHP</acronym> Session. Bei einem erfolgreichen Authentifizierungs Versuch
+                 speichert <methodname>Zend_Auth::authenticate()</methodname> die Identität des
                  Authentifizierungs Ergebnisses im persistenten Speicher. Solange die Konfiguration
                  nicht verändert wird, verwendet <classname>Zend_Auth</classname> eine
                  Speicherklasse die <classname>Zend_Auth_Storage_Session</classname> heißt und die
                  im Gegenzug <link linkend="zend.session"><classname>Zend_Session</classname></link>
                  verwendet. Eine eigene Klasse kann stattdessen verwendet werden, indem ein Objekt
-                 an <classname>Zend_Auth::setStorage()</classname> übergeben wird welches
+                 an <methodname>Zend_Auth::setStorage()</methodname> übergeben wird welches
                  <classname>Zend_Auth_Storage_Interface</classname> implementiert.
             </para>
 
@@ -255,15 +257,16 @@ switch ($result->getCode()) {
 
                 <para>
                     <classname>Zend_Auth_Storage_Session</classname> verwendet einen Session
-                    Namensraum von 'Zend_Auth'. Diese Namensraum kann überschrieben werden indem ein
-                    anderer Wert an den Konstruktor von
+                    Namensraum von '<classname>Zend_Auth</classname>'. Diese Namensraum kann
+                    überschrieben werden indem ein anderer Wert an den Konstruktor von
                     <classname>Zend_Auth_Storage_Session</classname> übergeben wird, und dieser Wert
                     wird intern an den Konstruktor von <classname>Zend_Session_Namespace</classname>
                     weitergereicht. Das sollte vor einem Versuch einer Authentifizierung stattfinden
-                    da <classname>Zend_Auth::authenticate()</classname> die automatische Speicherung
-                    der Identität durchführt.
+                    da <methodname>Zend_Auth::authenticate()</methodname> die automatische
+                    Speicherung der Identität durchführt.
+                </para>
 
-                    <programlisting language="php"><![CDATA[
+                <programlisting language="php"><![CDATA[
 // Eine Referenz zur Singleton Instanz von Zend_Auth speichern
 $auth = Zend_Auth::getInstance();
 
@@ -279,8 +282,6 @@ $auth->setStorage(new Zend_Auth_Storage_Session('someNamespace'));
 $result = $auth->authenticate($authAdapter);
 ]]></programlisting>
 
-                </para>
-
             </example>
 
         </sect3>
@@ -294,7 +295,7 @@ $result = $auth->authenticate($authAdapter);
                 verwenden als es von <classname>Zend_Auth_Storage_Session</classname> angeboten
                 wird. Für solche Fälle können Entwickler einfach
                 <classname>Zend_Auth_Storage_Interface</classname> implementieren und eine Instanz
-                der Klasse an <classname>Zend_Auth::setStorage()</classname> übergeben.
+                der Klasse an <methodname>Zend_Auth::setStorage()</methodname> übergeben.
             </para>
 
             <example id="zend.auth.introduction.persistence.custom.example">
@@ -306,8 +307,9 @@ $result = $auth->authenticate($authAdapter);
                     als sie durch <classname>Zend_Auth_Storage_Session</classname> angeboten wird,
                     können Entwickler <classname>Zend_Auth_Storage_Interface</classname>
                     implementieren:
+                </para>
 
-                    <programlisting language="php"><![CDATA[
+                <programlisting language="php"><![CDATA[
 class MyStorage implements Zend_Auth_Storage_Interface
 {
     /**
@@ -372,14 +374,13 @@ class MyStorage implements Zend_Auth_Storage_Interface
 }
 ]]></programlisting>
 
-                </para>
-
                 <para>
                     Um diese selbstgeschriebene Speicherklasse zu verwenden wird
-                    <classname>Zend_Auth::setStorage()</classname> aufgerufen bevor eine
+                    <methodname>Zend_Auth::setStorage()</methodname> aufgerufen bevor eine
                     Authentifizierungsanfrage stattfindet:
+                </para>
 
-                    <programlisting language="php"><![CDATA[
+                <programlisting language="php"><![CDATA[
 // Zend_Auth anweisen das die selbstdefinierte Speicherklasse verwendet wird
 Zend_Auth::getInstance()->setStorage(new MyStorage());
 
@@ -391,8 +392,6 @@ Zend_Auth::getInstance()->setStorage(new MyStorage());
 $result = Zend_Auth::getInstance()->authenticate($authAdapter);
 ]]></programlisting>
 
-                </para>
-
             </example>
 
         </sect3>
@@ -405,10 +404,12 @@ $result = Zend_Auth::getInstance()->authenticate($authAdapter);
 
         <para>
             Es gibt zwei vorhandene Wege um <classname>Zend_Auth</classname> Adapter zu verwenden:
-            <orderedlist>
+        </para>
+
+        <orderedlist>
             <listitem>
                 <para>
-                    Indirekt durch <classname>Zend_Auth::authenticate()</classname>
+                    Indirekt durch <methodname>Zend_Auth::authenticate()</methodname>
                 </para>
             </listitem>
             <listitem>
@@ -416,14 +417,14 @@ $result = Zend_Auth::getInstance()->authenticate($authAdapter);
                     Direkt durch die <methodname>authenticate()</methodname> Methode des Adapters
                 </para>
             </listitem>
-            </orderedlist>
-        </para>
+        </orderedlist>
 
         <para>
             Das folgende Beispiel zeigt wie ein <classname>Zend_Auth</classname> Adapter indirekt
             verwendet werden kann, durch die Verwendung der <classname>Zend_Auth</classname> Klasse:
+        </para>
 
-            <programlisting language="php"><![CDATA[
+        <programlisting language="php"><![CDATA[
 // Eine Referenz zur Singleton-Instanz von Zend_Auth erhalten
 $auth = Zend_Auth::getInstance();
 
@@ -445,30 +446,31 @@ if (!$result->isValid()) {
     // $result->getIdentity() === $username
 }
 ]]></programlisting>
-        </para>
 
         <para>
             Sobald die Authentifizierung in einer Anfrage durchgeführt wurde, so wie im obigen
             Beispiel, ist es sehr einfach zu Prüfen ob eine erfolgreich authentifizierte Identität
             existiert:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $auth = Zend_Auth::getInstance();
 if ($auth->hasIdentity()) {
     // Identität existiert; auslesen
     $identity = $auth->getIdentity();
 }
 ]]></programlisting>
-        </para>
 
         <para>
             Um eine Identität vom persistenten Speicher zu entfernen muß einfach die
             <methodname>clearIdentity()</methodname> Methode verwendet werden. Das würde
             typischerweise für die Implementierung einer "Abmelde" Operation in einer
             Anwendung Verwendung finden.
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 Zend_Auth::getInstance()->clearIdentity();
 ]]></programlisting>
-        </para>
 
         <para>
             Wenn die automatische Verwendung von persistenten Speichern für einen bestimmten
@@ -479,8 +481,9 @@ Zend_Auth::getInstance()->clearIdentity();
             <methodname>authenticate()</methodname> Methode. Adapter-spezifische Details werden in
             der Dokumentation jeden Adapters besprochen. Das folgende Beispeil verwendet
             <emphasis>MyAuthAdapter</emphasis> direkt:
+        </para>
 
-            <programlisting language="php"><![CDATA[
+        <programlisting language="php"><![CDATA[
 // Den Authentifizierungs Adapter erstellen
 $authAdapter = new MyAuthAdapter($username, $password);
 
@@ -497,7 +500,6 @@ if (!$result->isValid()) {
     // $result->getIdentity() === $username
 }
 ]]></programlisting>
-        </para>
 
     </sect2>
 

+ 52 - 49
documentation/manual/de/module_specs/Zend_Auth_Adapter_DbTable.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15845 -->
+<!-- EN-Revision: 15860 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.dbtable">
 
@@ -21,47 +21,48 @@
 
         <para>
             Die vorhandenen Konfigurationsoptionen beinhalten:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        <emphasis>tableName</emphasis>: Das ist der Name der Datenbanktabelle
-                        welche die Authentifikations Zeugnisse enthält, und gegen die die
-                        Datenbank Authentifikations Abfrage durchgeführt wird.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <emphasis>identityColumn</emphasis>: Ist der Name der Spalte der
-                        Datenbanktabelle die die Identität repräsentiert. Die Spalte der Identität
-                        muß eindeutige und einmalige Werte enthalten, wie einen Benutzernamen oder
-                        eine Email Adresse.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <emphasis>credentialColumn</emphasis>: Das ist der Name der Spalte der
-                        Datenbanktabelle die verwendet wird um die Zeugnisse zu repräsentieren. Bei
-                        einem einfachen Identitäts und Passwort-Authentifizierungs Schema
-                        korrespondieren die Zeugnisse mit dem Passwort. Siehe auch die
-                        <emphasis>credentialTreatment</emphasis> Option.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <emphasis>credentialTreatment</emphasis>: In vielen Fällen sind Passwörter
-                        und andere sensitive Daten verschlüsselt, gehasht, kodiert, gesalted,
-                        verschleiert oder auf andere Weise durch irgendeine Funktion oder einen
-                        Algorithmus behandelt. Durch die Spezifikation eines parametrisierbaren
-                        Behandlungsstrings mit dieser Methode, wie 'MD5(?)' oder
-                        'PASSWORD(?)', könnte ein Entwickler beliebiges SQL an den
-                        Eingabe- Zeugnis-Daten anwenden. Da diese Funktionen der darunter liegenden
-                        RDBMS speziell gehören, sollte das Handbuch der Datenbank auf das
-                        Vorhandensein solcher Funktionen im eigenen Datenbank System geprüft werden.
-                    </para>
-                </listitem>
-            </itemizedlist>
         </para>
 
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <emphasis>tableName</emphasis>: Das ist der Name der Datenbanktabelle
+                    welche die Authentifikations Zeugnisse enthält, und gegen die die
+                    Datenbank Authentifikations Abfrage durchgeführt wird.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>identityColumn</emphasis>: Ist der Name der Spalte der
+                    Datenbanktabelle die die Identität repräsentiert. Die Spalte der Identität
+                    muß eindeutige und einmalige Werte enthalten, wie einen Benutzernamen oder
+                    eine Email Adresse.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>credentialColumn</emphasis>: Das ist der Name der Spalte der
+                    Datenbanktabelle die verwendet wird um die Zeugnisse zu repräsentieren. Bei
+                    einem einfachen Identitäts und Passwort-Authentifizierungs Schema
+                    korrespondieren die Zeugnisse mit dem Passwort. Siehe auch die
+                    <emphasis>credentialTreatment</emphasis> Option.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>credentialTreatment</emphasis>: In vielen Fällen sind Passwörter
+                    und andere sensitive Daten verschlüsselt, gehasht, kodiert, gesalted,
+                    verschleiert oder auf andere Weise durch irgendeine Funktion oder einen
+                    Algorithmus behandelt. Durch die Spezifikation eines parametrisierbaren
+                    Behandlungsstrings mit dieser Methode, wie 'MD5(?)' oder
+                    'PASSWORD(?)', könnte ein Entwickler beliebiges SQL an den
+                    Eingabe- Zeugnis-Daten anwenden. Da diese Funktionen der darunter liegenden
+                    RDBMS speziell gehören, sollte das Handbuch der Datenbank auf das
+                    Vorhandensein solcher Funktionen im eigenen Datenbank System geprüft werden.
+                </para>
+            </listitem>
+        </itemizedlist>
+
         <example id="zend.auth.adapter.dbtable.introduction.example.basic_usage">
 
             <title>Grundsätzliche Verwendung</title>
@@ -320,21 +321,23 @@ $adapter = new Zend_Auth_Adapter_DbTable(
             <para>
                 Die Sicherheit kann sogar noch mehr erhöht werden indem ein statischer Salt Wert
                 hardcoded in der Anwendung verwendet wird. Im Falle das die Datenbank korrumpiert
-                wird (z.B. durch eine SQL Injection Attacke) aber der Webserver intakt bleibt sind
-                die Daten für den Angreifer noch immer nicht verwendbar.
+                wird (z.B. durch eine <acronym>SQL</acronym> Injection Attacke) aber der Webserver
+                intakt bleibt sind die Daten für den Angreifer noch immer nicht verwendbar.
             </para>
 
         </note>
 
         <para>
             Eine andere Alternative besteht darin die <methodname>getDbSelect()</methodname>
-            Methode von Zend_Auth_Adapter_DbTable zu verwenden nachdem der Adapter erstellt wurde.
-            Diese Methode gibt die Instanz des Zend_Db_Select Objekts zurück welches verwendet wird
-            um die authenticate() Methode zu komplettieren. Es ist wichtig anzumerken das diese
-            Methode immer das gleiche Objekt zurückgibt unabhängig davon ob authenticate()
-            aufgerufen wurde oder nicht. Diese Objekt <emphasis>enthält keine</emphasis> Identity
-            oder Anmeldeinformationen in sich da diese Werte im Select Objekt wärend des Ausführens
-            von authenticate() platziert werden.
+            Methode von <classname>Zend_Auth_Adapter_DbTable</classname> zu verwenden nachdem der
+            Adapter erstellt wurde. Diese Methode gibt die Instanz des
+            <classname>Zend_Db_Select</classname> Objekts zurück welches verwendet wird um die
+            <methodname>authenticate()</methodname> Methode zu komplettieren. Es ist wichtig
+            anzumerken das diese Methode immer das gleiche Objekt zurückgibt unabhängig davon ob
+            <methodname>authenticate()</methodname> aufgerufen wurde oder nicht. Diese Objekt
+            <emphasis>enthält keine</emphasis> Identity oder Anmeldeinformationen in sich da diese
+            Werte im Select Objekt wärend des Ausführens von
+            <methodname>authenticate()</methodname> platziert werden.
         </para>
         <para>
             Als Beispiel einer Situation könnte man die getDbSelect() Methode verwenden um

+ 53 - 43
documentation/manual/de/module_specs/Zend_Auth_Adapter_Digest.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15846 -->
+<!-- EN-Revision: 15860 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.digest">
 
@@ -11,8 +11,9 @@
 
         <para>
             <ulink url="http://en.wikipedia.org/wiki/Digest_access_authentication">Digest
-                Authentifizierung</ulink> ist eine Methode der HTTP Authentifizierung die die
-            <ulink url="http://en.wikipedia.org/wiki/Basic_authentication_scheme">Basis
+                Authentifizierung</ulink> ist eine Methode der <acronym>HTTP</acronym>
+            Authentifizierung die die <ulink
+                url="http://en.wikipedia.org/wiki/Basic_authentication_scheme">Basis
                 Authentifizierung</ulink> verbessert indem ein Weg angeboten wird um
             Authentifizierungen, ohne die Übermittlung des Passwortes als Klartext über das
             Netzwerk, durchzuführen.
@@ -21,23 +22,28 @@
         <para>
             Dieser Adapter erlaubt Authentifizierungen gegen Textdateien die Zeilen enthalten die
             folgende Basiselemente der Digest Authentifizierung enthalten:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        Benutzername, wie z.B. "<emphasis>joe.user</emphasis>"
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Bereich, wie z.B. "<emphasis>Administrativer Bereich</emphasis>"
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        MD5 Hash von Benutzername, Bereich und Passwort, getrennt durch Doppelpunkte
-                    </para>
-                </listitem>
-            </itemizedlist>
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    Benutzername, wie z.B. "<emphasis><filename>joe.user</filename></emphasis>"
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Bereich, wie z.B. "<emphasis>Administrativer Bereich</emphasis>"
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <acronym>MD5</acronym> Hash von Benutzername, Bereich und Passwort, getrennt
+                    durch Doppelpunkte
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
             Die obigen Elemente werden durch Doppelpunkte getrennt, wie im folgenden Beispiel (in
             dem das Passwort "<emphasis>irgendeinPasswort</emphasis>" ist):
         </para>
@@ -55,29 +61,33 @@ irgendeinBenutzer:Irgendein Bereich:fde17b91c3a510ecbaf7dbd37f59d4f8
         <para>
             Der Digest Authentifizierungs Adapter, <classname>Zend_Auth_Adapter_Digest</classname>,
             benötigt verschiedene Eingabeparameter:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        filename - Der Dateiename gegen den Authentifizierungs-Anfragen durchgeführt
-                        werden
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        realm - Digest Authentifizierungs Bereich
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        username - Digest Authentifizierungs Benutzer
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        password - Passwort für den Benutzer des Bereichs
-                    </para>
-                </listitem>
-            </itemizedlist>
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    filename - Der Dateiename gegen den Authentifizierungs-Anfragen durchgeführt
+                    werden
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    realm - Digest Authentifizierungs Bereich
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    username - Digest Authentifizierungs Benutzer
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    password - Passwort für den Benutzer des Bereichs
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
             Diese Parameter müssen vor dem Aufruf von <methodname>authenticate()</methodname>
             gesetzt werden.
         </para>

+ 155 - 131
documentation/manual/de/module_specs/Zend_Auth_Adapter_Http.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15846 -->
+<!-- EN-Revision: 15867 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.http">
 
@@ -14,64 +14,66 @@
             Implementation von <ulink url="http://tools.ietf.org/html/rfc2617">RFC-2617</ulink>,
             <ulink url="http://en.wikipedia.org/wiki/Basic_authentication_scheme">Basis</ulink> und
             <ulink url="http://en.wikipedia.org/wiki/Digest_access_authentication">Digest</ulink>
-            HTTP Authentifizierung. Digest Authentifizierung ist eine Methode der HTTP
-            Authentifikation die die Basis Authentifizierung erweitert indem ein Weg angeboten wird
-            um sich zu Authentifizieren ohne das das Passwort im Klartext über das Netzwerk
-            geschickt werden muß.
+            <acronym>HTTP</acronym> Authentifizierung. Digest Authentifizierung ist eine Methode der
+            <acronym>HTTP</acronym> Authentifikation die die Basis Authentifizierung erweitert indem
+            ein Weg angeboten wird um sich zu Authentifizieren ohne das das Passwort im Klartext
+            über das Netzwerk geschickt werden muß.
         </para>
 
         <para>
             <emphasis>Hauptsächliche Features:</emphasis>
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        Unterstützt sowohl Basis als auch Digest Authentifizierung.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Enthält Aufrufe für alle unterstützten Schemas, damit Klienten mit jedem
-                        unterstützten Schema arbeiten können.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Bietet Proxi Authentifizierung.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Enthält Unterstützung für die Authentifizierung gegenüber Textdateien und
-                        bietet ein Interface für die Authentifizierung gegenüber anderen Quellen,
-                        wie z.B. Datenbanken.
-                    </para>
-                </listitem>
-            </itemizedlist>
         </para>
 
+        <itemizedlist>
+            <listitem>
+                <para>
+                    Unterstützt sowohl Basis als auch Digest Authentifizierung.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Enthält Aufrufe für alle unterstützten Schemas, damit Klienten mit jedem
+                    unterstützten Schema arbeiten können.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Bietet Proxi Authentifizierung.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Enthält Unterstützung für die Authentifizierung gegenüber Textdateien und
+                    bietet ein Interface für die Authentifizierung gegenüber anderen Quellen,
+                    wie z.B. Datenbanken.
+                </para>
+            </listitem>
+        </itemizedlist>
+
         <para>
             Es gibt ein paar nennenswerte Features von RFC-2617 die bis jetzt nicht implementiert
             wurden:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        Einstweilige Verfolgung, welche "stale" Support erlaubt und die
-                        Unterstützung bei wiederholenden Attacken erhöht.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Authentifizierung mit Integritäts-Prüfung, oder "auth-int".
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        Authentifizierungs-Info HTTP Header.
-                    </para>
-                </listitem>
-            </itemizedlist>
         </para>
 
+        <itemizedlist>
+            <listitem>
+                <para>
+                    Einstweilige Verfolgung, welche "stale" Support erlaubt und die
+                    Unterstützung bei wiederholenden Attacken erhöht.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Authentifizierung mit Integritäts-Prüfung, oder "auth-int".
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    Authentifizierungs-Info <acronym>HTTP</acronym> Header.
+                </para>
+            </listitem>
+        </itemizedlist>
+
     </sect2>
 
     <sect2 id="zend.auth.adapter.design_overview">
@@ -79,13 +81,14 @@
         <title>Design Übersicht</title>
 
         <para>
-            Dieser Adapter besteht aus zwei Sub-Komponenten, die HTTP Authentifizierungs Klasse
-            selbst, und den sogenannten "Auflöser". Die HTTP Authentifizierungs Klasse kapselt die
-            Logik für die Ausführung beider, sowohl der Basis als auch der Digest Authentifizierung.
-            Sie verwendet einen Auflöser um die Identität eines Klienten in Datenspeichern
-            nachzusehen (standardmäßig eine Textdatei), und die Zeugnisse vom Datenspeicher zu
-            empfangen. Die "aufgelösten" Zeugnisse werden dann mit den Werten verglichen die vom
-            Klienten übermittelt wurden um zu eruieren ob die Authentifizierung erfolgreich war.
+            Dieser Adapter besteht aus zwei Sub-Komponenten, die <acronym>HTTP</acronym>
+            Authentifizierungs Klasse selbst, und den sogenannten "Auflöser". Die
+            <acronym>HTTP</acronym> Authentifizierungs Klasse kapselt die Logik für die
+            Ausführung beider, sowohl der Basis als auch der Digest Authentifizierung. Sie
+            verwendet einen Auflöser um die Identität eines Klienten in Datenspeichern nachzusehen
+            (standardmäßig eine Textdatei), und die Zeugnisse vom Datenspeicher zu empfangen. Die
+            "aufgelösten" Zeugnisse werden dann mit den Werten verglichen die vom Klienten
+            übermittelt wurden um zu eruieren ob die Authentifizierung erfolgreich war.
         </para>
 
     </sect2>
@@ -98,71 +101,72 @@
             Die <classname>Zend_Auth_Adapter_Http</classname> Klasse benötigt ein Konfigurations
             Array das Ihrem Konstruktor übergeben werden muß. Es sind verschiedene Konfigurations
             Optionen vorhanden, und einige davon werden benötigt:
-            <table id="zend.auth.adapter.configuration_options.table">
-                <title>Konfigurations Optionen</title>
-                <tgroup cols="3">
-                    <thead>
-                        <row>
-                            <entry>Options Name</entry>
-                            <entry>Benötigt</entry>
-                            <entry>Beschreibung</entry>
-                        </row>
-                    </thead>
-                    <tbody>
-                        <row>
-                            <entry><emphasis>accept_schemes</emphasis></entry>
-                            <entry>Ja</entry>
-                            <entry>
-                                Ermittelt welches Authentifizierungs Schema der Adapter vom
-                                Klienten akzeptiert. Muß eine Leerzeichen-getrennte Liste sein, die
-                                <emphasis>'basic'</emphasis> und/oder <emphasis>'digest'</emphasis>
-                                enthält.
-                            </entry>
-                        </row>
-                        <row>
-                            <entry><emphasis>realm</emphasis></entry>
-                            <entry>Ja</entry>
-                            <entry>
-                                Setzt das Authentifizierungs-Bereich; Benutzernamen sollten im
-                                angegebenen Bereich einmalig sein.
-                            </entry>
-                        </row>
-                        <row>
-                            <entry><emphasis>digest_domains</emphasis></entry>
-                            <entry>
-                                Ja, wenn <emphasis>'accept_schemes'</emphasis>
-                                <emphasis>'digest'</emphasis> enthält
-                            </entry>
-                            <entry>
-                                Leerzeichen-getrennte Liste von URIs für die die gleichen
-                                Authentifizierungs Informationen gültig sind. Die URIs müssen nicht
-                                alle auf den gleichen Server zeigen.
-                            </entry>
-                        </row>
-                        <row>
-                            <entry><emphasis>nonce_timeout</emphasis></entry>
-                            <entry>
-                                Ja, wenn <emphasis>'accept_schemes'</emphasis>
-                                <emphasis>'digest'</emphasis> enthält
-                            </entry>
-                            <entry>
-                                Setzt die Anzahl an Sekunden für die die Verfolgung gültig ist.
-                                Siehe die Notizen anbei.
-                            </entry>
-                        </row>
-                        <row>
-                            <entry><emphasis>proxy_auth</emphasis></entry>
-                            <entry>Nein</entry>
-                            <entry>
-                                Standardmäßig ausgeschaltet. Einschalten um Proxi Authentifizierung
-                                durchzuführen statt normaler originaler Server Authentifizierung.
-                            </entry>
-                        </row>
-                    </tbody>
-                </tgroup>
-            </table>
         </para>
 
+        <table id="zend.auth.adapter.configuration_options.table">
+            <title>Konfigurations Optionen</title>
+            <tgroup cols="3">
+                <thead>
+                    <row>
+                        <entry>Options Name</entry>
+                        <entry>Benötigt</entry>
+                        <entry>Beschreibung</entry>
+                    </row>
+                </thead>
+                <tbody>
+                    <row>
+                        <entry><emphasis>accept_schemes</emphasis></entry>
+                        <entry>Ja</entry>
+                        <entry>
+                            Ermittelt welches Authentifizierungs Schema der Adapter vom
+                            Klienten akzeptiert. Muß eine Leerzeichen-getrennte Liste sein, die
+                            <emphasis>'basic'</emphasis> und/oder <emphasis>'digest'</emphasis>
+                            enthält.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>realm</emphasis></entry>
+                        <entry>Ja</entry>
+                        <entry>
+                            Setzt das Authentifizierungs-Bereich; Benutzernamen sollten im
+                            angegebenen Bereich einmalig sein.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>digest_domains</emphasis></entry>
+                        <entry>
+                            Ja, wenn <emphasis>'accept_schemes'</emphasis>
+                            <emphasis>'digest'</emphasis> enthält
+                        </entry>
+                        <entry>
+                            Leerzeichen-getrennte Liste von URIs für die die gleichen
+                            Authentifizierungs Informationen gültig sind. Die URIs müssen nicht
+                            alle auf den gleichen Server zeigen.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>nonce_timeout</emphasis></entry>
+                        <entry>
+                            Ja, wenn <emphasis>'accept_schemes'</emphasis>
+                            <emphasis>'digest'</emphasis> enthält
+                        </entry>
+                        <entry>
+                            Setzt die Anzahl an Sekunden für die die Verfolgung gültig ist.
+                            Siehe die Notizen anbei.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>proxy_auth</emphasis></entry>
+                        <entry>Nein</entry>
+                        <entry>
+                            Standardmäßig ausgeschaltet. Einschalten um Proxi Authentifizierung
+                            durchzuführen statt normaler originaler Server Authentifizierung.
+                        </entry>
+                    </row>
+                </tbody>
+            </tgroup>
+        </table>
+
         <note>
             <para>
                 Die aktuelle Implementation von <emphasis>nonce_timeout</emphasis> hat einige
@@ -185,7 +189,7 @@
             Der Job des Auflösers ist es einen Benutzernamen und einen Bereich, und gibt eine Art
             von Zeugnisswert zurück. Basis Authentifizierung erwartet einen Hash des Benutzernamens,
             des Bereichs, und dessen Passwörter (jedes seperiert durch ein Komma). Aktuell ist der
-            einzige unterstützte Hash Algorithmus MD5.
+            einzige unterstützte Hash Algorithmus <acronym>MD5</acronym>.
         </para>
 
         <para>
@@ -205,29 +209,42 @@
                 kann. Ihre <methodname>resolve()</methodname> Methode geht durch die Textdatei, und
                 sucht nach einer Zeile mit einem entsprechenden Benutzernamen und Bereich. Das
                 Format der Textdatei ist ähnlich dem von Apache htpasswd Dateien:
-                <programlisting language="txt"><![CDATA[
+            </para>
+
+            <programlisting language="txt"><![CDATA[
 <benutzername>:<bereich>:<zeugnisse>\n
 ]]></programlisting>
+
+            <para>
                 Jede Zeile besteht aus drei Feldern - Benutzername, Bereich und Zeugnisse - jede
                 abgeteilt durch einen Doppelpunkt. Das Zeugnis Feld ist für den Datei Auflöser nicht
                 sichtbar; es gibt den Wert einfach, wie er ist, an den Aufrufer zurück. Deswegen
                 kann dieses Dateiformat sowohl Basis als auch Digest Authentifizierung behandeln. In
                 der Basis Authentifizierung sollte das Zeugnis Feld im Klartext stehen. In der
-                Digest Authentifizierung sollte es der oben beschriebene MD5 Hash sein.
+                Digest Authentifizierung sollte es der oben beschriebene <acronym>MD5</acronym> Hash
+                sein.
             </para>
 
             <para>
                 Es gibt zwei gleiche einfache Wege um einen Datei Auflöser zu erstellen:
-                <programlisting language="php"><![CDATA[
+            </para>
+
+            <programlisting language="php"><![CDATA[
 $path     = 'files/passwd.txt';
 $resolver = new Zend_Auth_Adapter_Http_Resolver_File($path);
 ]]></programlisting>
+
+            <para>
                 oder
-                <programlisting language="php"><![CDATA[
+            </para>
+
+            <programlisting language="php"><![CDATA[
 $path     = 'files/passwd.txt';
 $resolver = new Zend_Auth_Adapter_Http_Resolver_File();
 $resolver->setFile($path);
 ]]></programlisting>
+
+            <para>
                 Wenn der angegebene Pfad leer oder nicht lesbar ist, wird eine Ausnahme geworfen.
             </para>
 
@@ -241,7 +258,9 @@ $resolver->setFile($path);
 
         <para>
             Zuerst muß ein Array mit den benötigen Konfigurationswerten gesetzt werden:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $config = array(
     'accept_schemes' => 'basic digest',
     'realm'          => 'My Web Site',
@@ -249,6 +268,8 @@ $config = array(
     'nonce_timeout'  => 3600,
 );
 ]]></programlisting>
+
+        <para>
             Dieses Array bringt den Adapter dazu entwedet Basis oder Digest Authentifizierung zu
             akzeptieren, und benötigt einen authentifizierten Zugriff auf alle Areale der Site
             unter <filename>/members_only</filename> und <filename>/my_account</filename>. Der
@@ -258,17 +279,20 @@ $config = array(
         </para>
 
         <para>
-            Dann wird ein Zend_Auth_Adapter_Http Objekt erstellt:
-            <programlisting language="php"><![CDATA[
+            Dann wird ein <classname>Zend_Auth_Adapter_Http</classname> Objekt erstellt:
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $adapter = new Zend_Auth_Adapter_Http($config);
 ]]></programlisting>
-        </para>
 
         <para>
             Da beides, Basis und Digest Authentifizierung, unterstützt werden, werden zwei
             unterschiedliche Auflösungs-Objekte benötigt. Man könnte das auch einfach durch die
             Verwendung von zwei unterschiedlichen Klassen bewerkstelligen:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $basicResolver = new Zend_Auth_Adapter_Http_Resolver_File();
 $basicResolver->setFile('files/basicPasswd.txt');
 
@@ -278,12 +302,13 @@ $digestResolver->setFile('files/digestPasswd.txt');
 $adapter->setBasicResolver($basicResolver);
 $adapter->setDigestResolver($digestResolver);
 ]]></programlisting>
-        </para>
 
         <para>
             Letztendlich führen wir die Authentifizierung durch. Der Adapter benötigt eine Referenz
             zu beidem, dem Anfrage und Antwort Objekten um seinen Job durchführen zu können:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 assert($request instanceof Zend_Controller_Request_Http);
 assert($response instanceof Zend_Controller_Response_Http);
 
@@ -295,7 +320,6 @@ if (!$result->isValid()) {
     // Schlechter Benutzername/Passwort, oder abgebrochener Passwort Prompt
 }
 ]]></programlisting>
-        </para>
 
     </sect2>
 

+ 467 - 442
documentation/manual/de/module_specs/Zend_Auth_Adapter_Ldap.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15846 -->
+<!-- EN-Revision: 15892 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.ldap">
 
@@ -11,20 +11,20 @@
 
         <para>
             <classname>Zend_Auth_Adapter_Ldap</classname> unterstützt Webanwendungen bei der
-            Authentifizierung mit LDAP Services. Die Features beinhalten Kanonisierung von
-            Benutzernamen und Domainnamen, Mehrfach-Domain Authentifizierung, und Fehlerbehandlungs
-            Features. Es wurde getestet mit <ulink
+            Authentifizierung mit <acronym>LDAP</acronym> Services. Die Features beinhalten
+            Kanonisierung von Benutzernamen und Domainnamen, Mehrfach-Domain Authentifizierung, und
+            Fehlerbehandlungs Features. Es wurde getestet mit <ulink
                 url="http://www.microsoft.com/windowsserver2003/technologies/directory/activedirectory/">Microsoft
                 Active Directory</ulink> und <ulink url="http://www.openldap.org/">OpenLDAP</ulink>,
-            sollte auch auch mit anderen LDAP Service Provider zusammenarbeiten.
+            sollte auch auch mit anderen <acronym>LDAP</acronym> Service Provider zusammenarbeiten.
         </para>
 
         <para>
             Diese Dokumentation enthält eine Anleitung der Verwendung von
-            <classname>Zend_Auth_Adapter_Ldap</classname>, eine Beschreibung der API, eine Ausgabe
-            der verschiedenen Optionen, Diagnostische Informationen für die Fehlerbehandlung bei
-            Authentifizierungs Problemen, und Beispiel Optionen für beide, Active Directory und
-            OpenLDAP Server.
+            <classname>Zend_Auth_Adapter_Ldap</classname>, eine Beschreibung der
+            <acronym>API</acronym>, eine Ausgabe der verschiedenen Optionen, Diagnostische
+            Informationen für die Fehlerbehandlung bei Authentifizierungs Problemen, und Beispiel
+            Optionen für beide, Active Directory und OpenLDAP Server.
         </para>
 
     </sect2>
@@ -37,7 +37,9 @@
             Um <classname>Zend_Auth_Adapter_Ldap</classname> Authentifizierung in eigene Anwendungen
             schnell einzubauen, selbst wenn <classname>Zend_Controller</classname> nicht verwendet
             wird, sollte das Fleisch des eigenen Codes in etwa wie folgt aussehen:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $username = $this->_request->getParam('username');
 $password = $this->_request->getParam('password');
 
@@ -70,6 +72,8 @@ if ($log_path) {
     }
 }
 ]]></programlisting>
+
+        <para>
             Natürlich ist der Logging Code optional, aber es wird dringend empfohlen einen Logger
             zu verwenden. <classname>Zend_Auth_Adapter_Ldap</classname> zeichnet fast jedes
             Bisschen an Information in <varname>$messages</varname> auf das irgendwer benötigen
@@ -90,7 +94,9 @@ if ($log_path) {
             <classname>Zend_Config_Ini</classname> jeden Wert der mit Gleichheitszeichen
             (<emphasis>=</emphasis>) geschrieben wird auch unter Anführungszeichen gesetzt wird
             (wie unten bei DNs gezeigt).
-            <programlisting language="ini"><![CDATA[
+        </para>
+
+        <programlisting language="ini"><![CDATA[
 [production]
 
 ldap.log_path = /tmp/ldap.log
@@ -113,6 +119,8 @@ ldap.server2.accountDomainNameShort = W
 ldap.server2.accountCanonicalForm = 3
 ldap.server2.baseDn = "CN=Users,DC=w,DC=net"
 ]]></programlisting>
+
+        <para>
             Die obige Konfiguration instruiert <classname>Zend_Auth_Adapter_Ldap</classname> das es
             versuchen soll Benutzer zuerst mit dem OpenLDAP Server <filename>s0.foo.net</filename>
             authentifizieren soll. Wenn die Authentifizierung auf irgendeinem Grund fehlschlägt,
@@ -147,17 +155,20 @@ ldap.server2.baseDn = "CN=Users,DC=w,DC=net"
             oder mehrere Sets von Optionen enthält. Es ist zu beachten das es sich um
             <emphasis>Array von Arrays</emphasis> von <link
                 linkend="zend.ldap"><classname>Zend_Ldap</classname></link> Optionen handelt. Selbst
-            wenn nur ein einzelner LDAP Server verwendet wird, müssen die Optionen trotzdem in einem
-            anderen Array sein.
+            wenn nur ein einzelner <acronym>LDAP</acronym> Server verwendet wird, müssen die
+            Optionen trotzdem in einem anderen Array sein.
         </para>
 
         <para>
             Anbei ist eine <ulink
                 url="http://php.net/print_r"><methodname>print_r()</methodname></ulink>
-            Ausgabe von beispielhaften Optionsparameters die twei Sets von Serveroptionen für LDAP
-            Server enthalten, <filename>s0.foo.net</filename> und <filename>dc1.w.net</filename>
-            (die gleichen Optionen wie in der oberen INI Repräsentation):
-            <programlisting language="output"><![CDATA[
+            Ausgabe von beispielhaften Optionsparameters die zwei Sets von Serveroptionen für
+            <acronym>LDAP</acronym> Server enthalten, <filename>s0.foo.net</filename> und
+            <filename>dc1.w.net</filename> (die gleichen Optionen wie in der oberen
+            <acronym>INI</acronym> Repräsentation):
+        </para>
+
+        <programlisting language="output"><![CDATA[
 Array
 (
     [server2] => Array
@@ -184,6 +195,8 @@ Array
 
 )
 ]]></programlisting>
+
+        <para>
             Die oben angebotene Information in jedem Set von Optionen ist hauptsächlich deswegen
             unterschiedlich weil AD keinen Benutzernamen wärend des Bindesn in der DN Form benötigt
             (siehe die <emphasis>bindRequiresDn</emphasis> Option des
@@ -196,13 +209,13 @@ Array
             <title>Was ist ein ausgezeichneter Name?</title>
             <para>
                 Ein DN oder "distinguished name" ist ein String der den Pfad zu einem Objekt im
-                LDAP Verzeichnis repräsentiert. Jede komma-seperierte Komponente ist ein Attribut
-                und Wert der einen Node repräsentiert. Die Komponenten werden rückwirkend
-                evaluiert. Zum Beispiel ist der Benutzeraccount
+                <acronym>LDAP</acronym> Verzeichnis repräsentiert. Jede komma-seperierte Komponente
+                ist ein Attribut und Wert der einen Node repräsentiert. Die Komponenten werden
+                rückwirkend evaluiert. Zum Beispiel ist der Benutzeraccount
                 <emphasis>CN=Bob Carter,CN=Users,DC=w,DC=net</emphasis> direkt in
                 <emphasis>CN=Users,DC=w,DC=net container</emphasis> enthalten. Diese Struktur wird
-                am besten mit einem LDAP Browser wie das ADSI Edit MMC snap-in für Active Directory
-                oder phpLDAPadmin erkundet.
+                am besten mit einem <acronym>LDAP</acronym> Browser wie das <acronym>ADSI</acronym>
+                Edit <acronym>MMC</acronym> snap-in für Active Directory oder phpLDAPadmin erkundet.
             </para>
         </note>
 
@@ -211,8 +224,9 @@ Array
             beliebig, aber aus Gründen der Verwendung von <classname>Zend_Config</classname>
             sollten die Identifikatoren (im Gegensatz dazu das Sie nummerische Indezes sind)
             vorhanden sein, und sollten keine spezielle Zeichen enthalten die vom assoziierten
-            Dateiformat verwendet werden (z.B. der '<emphasis>.</emphasis>' INI Eigenschafts
-            Separator, '<emphasis>&amp;</emphasis>' für XML Entity Referenzen, usw.).
+            Dateiformat verwendet werden (z.B. der '<emphasis>.</emphasis>' <acronym>INI</acronym>
+            Eigenschafts Separator, '<emphasis>&amp;</emphasis>' für <acronym>XML</acronym> Entity
+            Referenzen, usw.).
         </para>
 
         <para>
@@ -227,12 +241,12 @@ Array
                 Wenn die <methodname>authenticate()</methodname> Methode aufgerufen wird, iteriert
                 der Adapter über jedes Set von Serveroptione, setzt diese auf der internen
                 <classname>Zend_Ldap</classname> Instanz und ruft die
-                <classname>Zend_Ldap::bind()</classname> Methode, mit dem Benutzernamen und
+                <methodname>Zend_Ldap::bind()</methodname> Methode, mit dem Benutzernamen und
                 Passwort das authentifiziert werden soll, auf. Die <classname>Zend_Ldap</classname>
                 Klasse prüft um zu sehen ob der Benutzer mit einer Domain qualifiziert ist (hat
-                z.B. eine Domainkomponente wie <emphasis>alice@foo.net</emphasis> oder
-                <emphasis>FOO\alice</emphasis>). Wenn eine Domain vorhanden ist, aber mit keiner
-                der Domainnamen der Server (<emphasis>foo.net</emphasis> oder
+                z.B. eine Domainkomponente wie <filename>alice@foo.net</filename> oder
+                <filename>FOO\alice</filename>). Wenn eine Domain vorhanden ist, aber mit keiner
+                der Domainnamen der Server (<filename>foo.net</filename> oder
                 <emphasis>FOO</emphasis>) übereinstimmt, wird eine spezielle Ausnahme geworfen und
                 durch <classname>Zend_Auth_Adapter_Ldap</classname> gefangen, was bewirkt das der
                 Server ignoriert wird und der nächste, in den Serveroptionen gesetzte Server,
@@ -254,9 +268,10 @@ Array
         <para>
             Die username und password Parameter des <classname>Zend_Auth_Adapter_Ldap</classname>
             Konstruktors repräsentieren die Zugangsdaten die authentifiziert werden sollen (z.B.
-            die Zugangsdaten die durch den Benutzer über eine HTML Login Form angegeben werden).
-            Alternativ können Sie auch mit den <methodname>setUsername()</methodname> und
-            <methodname>setPassword()</methodname> Methoden gesetzt werden.
+            die Zugangsdaten die durch den Benutzer über eine <acronym>HTML</acronym> Login Form
+            angegeben werden). Alternativ können Sie auch mit den
+            <methodname>setUsername()</methodname> und <methodname>setPassword()</methodname>
+            Methoden gesetzt werden.
         </para>
 
     </sect2>
@@ -268,231 +283,238 @@ Array
         <para>
             Jedes Set von Serveroptionen <emphasis>im Kontext von
             <classname>Zend_Auth_Adapter_Ldap</classname></emphasis> besteht aus den folgenden
-            Optionen welche, großteils ungeändert, an <classname>Zend_Ldap::setOptions()</classname>
-            übergeben werden:
+            Optionen welche, großteils ungeändert, an
+            <methodname>Zend_Ldap::setOptions()</methodname> übergeben werden:
+        </para>
 
-            <table id="zend.auth.adapter.ldap.server-options.table">
-              <title>Server Optionen</title>
-              <tgroup cols="2">
+        <table id="zend.auth.adapter.ldap.server-options.table">
+            <title>Server Optionen</title>
+            <tgroup cols="2">
                 <thead>
-                  <row>
-                    <entry>Name</entry>
-                    <entry>Beschreibung</entry>
-                  </row>
+                    <row>
+                        <entry>Name</entry>
+                        <entry>Beschreibung</entry>
+                    </row>
                 </thead>
                 <tbody>
-                  <row>
-                    <entry><emphasis>host</emphasis></entry>
-                    <entry>
-                        Der Hostname des LDAP Servers der diese Optionen repräsentiert. Diese
-                        Option wird benötigt.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>port</emphasis></entry>
-                    <entry>
-                        Der Port auf den der LDAP Server schaut. Wenn
-                        <emphasis>useSsl</emphasis> <constant>TRUE</constant> ist, ist der
-                        Standardwert von <emphasis>port</emphasis> 636. Wenn
-                        <emphasis>useSsl</emphasis> <constant>FALSE</constant> ist, ist der
-                        Standardwert von <emphasis>port</emphasis> 389.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry>useStartTls</entry>
-                    <entry>
-                        Ob der LDAP Client einen TSL (aka SSLv2) verschlüsselten Transport
-                        verwenden soll oder nicht. Der Wert <constant>TRUE</constant> wird in
-                        einer Produktionsumgebung strengstens empfohlen um zu verhindern das
-                        Passwörter im Klartext übertragen werden. Der Standardwert ist
-                        <constant>FALSE</constant>, da Server typischerweise nach deren
-                        Installation erwarten das ein Zertifikat installiert wird. Die
-                        <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis> Optionen
-                        schließen sich gegenseitig aus. Die <emphasis>useStartTls</emphasis> Option
-                        sollte über <emphasis>useSsl</emphasis> favorisiert werden, aber nicht alle
-                        Server unterstützen diesen neueren Mechanismus.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry>useSsl</entry>
-                    <entry>
-                        Ob der LDAP Client einen SSL verschlüsselten Transport verwenden soll. Die
-                        <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis> Optionen
-                        schließen sich gegenseitig aus, aber <emphasis>useStartTls</emphasis>
-                        sollte favorisiert werden wenn der Server und die LDAP Bibliothek des
-                        Clients diese unterstützen. Dieser Wert ändert auch den Standardwert von
-                        <emphasis>port</emphasis> (siehe die <emphasis>port</emphasis> Beschreibung
-                        weiter oben).
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>username</emphasis></entry>
-                    <entry>
-                        Der DN des Accounts der verwendet wird um DN Account Loopups durchzuführen.
-                        LDAP Server die den Benutzernamen in in DN Form benötigenwenn "bind"
-                        durchgeführt wird, benötigen diese Option. Wenn
-                        <emphasis>bindRequiresDn</emphasis> <constant>TRUE</constant> ist,
-                        wird diese Option benötigt. Dieser Account muß kein privilegierter Account
-                        sein - ein Account mit nur-lese Zugriff zu Objekten unter
-                        <emphasis>baseDn</emphasis> ist alles was notwendig ist
-                        (und bevorzugt unter dem <emphasis>Prinzip des geringsten
-                        Privilegs</emphasis>).
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>password</emphasis></entry>
-                    <entry>
-                        Das Passwort des Accounts der verwendet wird um DN Lookups durchzuführen.
-                        Wenn diese Option nicht unterstützt wird, versucht der LDAP Client einen
-                        "anonymen bind" wenn DN Lookups durchgeführt werden.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>bindRequiresDn</emphasis></entry>
-                    <entry>
-                        Einige LDAP Server benötigen den zum Binden verwendeten Benutzernamen in
-                        der DN Form wie <emphasis>CN=Alice Baker,OU=Sales,DC=foo,DC=net</emphasis>
-                        (grundsätzlich alle Server <emphasis>außer</emphasis> AD). Wenn diese
-                        Option <constant>TRUE</constant> ist, instuiert dies
-                        <classname>Zend_Ldap</classname> das der DN automatisch empfangen wird,
-                        abhängig vom Benutzernamen der authentifiziert wird, wenn er nicht bereits
-                        in DN Form ist, und diesen dann wieder mit der richtigen DN zu binden. Der
-                        Standardwert ist <constant>FALSE</constant>. Aktuell ist nur von Microsoft
-                        Active Directory Server (ADS) bekannt das es den Benutzernamen
-                        <emphasis>nicht</emphasis> in der DN Form benötigt wenn gebunden wird, und
-                        deswegen kann diese Option mit AD auch <constant>FALSE</constant> sein (und
-                        sollte das auch, da das Empfangen des DN eine extra Anfrage zum Server
-                        benötigt). Andernfalls muß diese Option auf <constant>TRUE</constant>
-                        gesetzt werden (z.B. für OpenLDAP). Diese Option kontrolliert das Standard
-                        <emphasis>acountFilterFormat</emphasis> das verwendet wird
-                        wenn nach Accounts gesucht wird. Siehe auch die
-                        <emphasis>accountFilterFormat</emphasis> Option.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>baseDn</emphasis></entry>
-                    <entry>
-                        Der Ort vom DN unter dem alle Accounts die authentifiziert werden. Diese
-                        Option wird benötigt. Wenn man sich unsicher über den richtigen
-                        <emphasis>baseDn</emphasis> ist, sollte es genug sein Ihn von
-                        der DNS Domain des Benutzers der die <emphasis>DC=</emphasis> Komponenten
-                        verwedet abzuleiten. Wenn der Hauptname eines Benutzers
-                        <emphasis>alice@foo.net</emphasis> ist, sollte ein
-                        <emphasis>baseDn</emphasis> von
-                        <emphasis>DC=foo,DC=net</emphasis> funktionieren. Eine präzisere Ortsangabe
-                        (z.B. <emphasis>OU=Sales,DC=foo,DC=net</emphasis>) ist trotzdem
-                        effizienter.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>accountCanonicalForm</emphasis></entry>
-                    <entry>
-                        Ein Wert von 2, 3 oder 4 zeigt die Form zu der Account Namen authorisiert
-                        werden sollten nachdem die Authentifizierung erfolgreich war. Die Werte
-                        sind wie folgt: 2 für traditionelle Benutzernamen-Stil Namen
-                        (z.B., <emphasis>alice</emphasis>), 3 für Schrägstrich-Stil Namen (z.B.,
-                        <emphasis>FOO\alice</emphasis>) oder 4 für Authentifiziert-Sil Namen (z.B.,
-                        <emphasis>alice@foo.net</emphasis>). Der Standardwert ist 4 (z.B.,
-                        <emphasis>alice@foo.net</emphasis>). Mit einem Wert von 3, z.B., wird die
-                        Identität die von <classname>Zend_Auth_Result::getIdentity()</classname>
-                        zurückgegeben wird (und <classname>Zend_Auth::getIdentity()</classname>,
-                        wenn <classname>Zend_Auth</classname> verwendet wird), immer
-                        <emphasis>FOO\alice</emphasis> sein, unabhängig von der Form in der Alice
-                        angegeben wurde, egal ob es <emphasis>alice</emphasis>,
-                        <emphasis>alice@foo.net</emphasis>, <emphasis>FOO\alice</emphasis>,
-                        <emphasis>FoO\aLicE</emphasis>, <emphasis>foo.net\alice</emphasis>, etc.
-                        Siehe das Kapitel <emphasis>Kanonisierung von Account Namen</emphasis>
-                        in der <classname>Zend_Ldap</classname> Dokumentation für Details. Bei der
-                        Verwendung von mehreren Sets von Serveroptionen ist es empfehlenswert,
-                        aber nicht notwendig, das die selbe
-                        <emphasis>accountCanonicalForm</emphasis> in allen
-                        Serveroptionen verwendet wird, sodas die sich ergebenden Benutzernamen
-                        immer auf die selbe Art und Weise kanonisiert werden (z.b. wenn man auf
-                        <emphasis>EXAMPLE\username</emphasis> mit einem AD Server kanonisiert, aber
-                        zu <emphasis>username@example.com</emphasis> mit einem OpenLDAP Server,
-                        kann das quirks für die High-Level Logik einer Anwendung sein).
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>accountDomainName</emphasis></entry>
-                    <entry>
-                        Der FDQN Domainname für welchen der Ziel LDAP Server eine Authorität ist
-                        (z.B., <filename>example.com</filename>). Diese Option wird verwendet um
-                        Namen zu kanonisieren sodas der Benutzername der vom Benutzer angeboten
-                        wird, wie es für das Binden notwendig ist, konvertiert werden kann. Er wird
-                        auch verwendet um festzustellen ob der Server eine Authorität für den
-                        angegebenen Benutzernamen ist (z.B., wenn
-                        <emphasis>accountDomainName</emphasis>
-                        <emphasis>foo.net</emphasis> ist und der angegebene Benutzer
-                        <emphasis>bob@bar.net</emphasis>, wird der Server nicht abgefragt, und das
-                        Ergebnis wird ein Fehler sein). Diese Option wird nicht benötigt, aber wenn
-                        Sie nicht angegeben wird, dann werden Benutzernamen in prinzipieller
-                        Namensform (z.B., <emphasis>alice@foo.net</emphasis>) nicht unterstützt. Es
-                        wird stark empfohlen das diese Option angegeben wird, da es viele
-                        Anwendungsfälle gibt die die Erstellung von prinzipieller Namensform
-                        benötigen.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>accountDomainNameShort</emphasis></entry>
-                    <entry>
-                        Die 'short' Domain für die der Ziel LDAP Server eine Authorität ist (z.B.,
-                        <emphasis>FOO</emphasis>). Es ist z ubeachten das es ein 1:1 Mapping
-                        zwischen <emphasis>accountDomainName</emphasis> und
-                        <emphasis>accountDomainNameShort</emphasis> existiert. Diese
-                        Option sollte verwendet werden um den NetBIOS Domainnamen für Windows
-                        Netzwerke zu spezifizieren, kann aber auch von nicht-AD Servern verwendet
-                        werden (z.B., für Konsistenz bei mehreren Sets von Serveroptionen bei dem
-                        Schrägstrich Stil <emphasis>accountCanonicalForm</emphasis>).
-                        Diese Option wird nicht benötigt, aber wenn Sie nicht angegeben wird,
-                        werden Benutzernamen im Schrägstrich Stil (z.B.
-                        <emphasis>FOO\alice</emphasis>) nicht unterstützt.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>accountFilterFormat</emphasis></entry>
-                    <entry>
-                        Der LDAP Suchfilter der für die Suche nach Accounts verwendet wird. Dieser
-                        String ist ein <ulink
-                            url="http://php.net/printf"><methodname>printf()</methodname></ulink>-Stil
-                        Ausdruck der ein '<emphasis>%s</emphasis>' enthalten muß um den
-                        Benutzernamen unterzubringen. Der Standardwert ist
-                        '<emphasis>(&amp;(objectClass=user)(sAMAccountName=%s))</emphasis>',
-                        ausgenommen <emphasis>bindRequiresDn</emphasis> wird auf
-                        <constant>TRUE</constant> gesetzt. In diesem Fall ist der Standardwert
-                        '<emphasis>(&amp;(objectClass=posixAccount)(uid=%s))</emphasis>'. Wenn, zum
-                        Beispiel, aus irgendeinem Grund <emphasis>bindRequiresDn = true</emphasis>
-                        mit AD verwendet werden soll, muß <emphasis>accountFilterFormat =
-                            '(&amp;(objectClass=user)(sAMAccountName=%s))</emphasis>' gesetzt
-                        werden.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry><emphasis>optReferrals</emphasis></entry>
-                    <entry>
-                        Wenn sie auf <constant>TRUE</constant> gesetzt wird, zeigt diese Option dem LDAP
-                        Client an, das Referenzen gefolgt werden soll. Der Standardwert ist
-                        <constant>FALSE</constant>.
-                    </entry>
-                  </row>
+                    <row>
+                        <entry><emphasis>host</emphasis></entry>
+                        <entry>
+                            Der Hostname des LDAP Servers der diese Optionen repräsentiert. Diese
+                            Option wird benötigt.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>port</emphasis></entry>
+                        <entry>
+                            Der Port auf den der LDAP Server schaut. Wenn
+                            <emphasis>useSsl</emphasis> <constant>TRUE</constant> ist, ist der
+                            Standardwert von <emphasis>port</emphasis> 636. Wenn
+                            <emphasis>useSsl</emphasis> <constant>FALSE</constant> ist, ist der
+                            Standardwert von <emphasis>port</emphasis> 389.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry>useStartTls</entry>
+                        <entry>
+                            Ob der LDAP Client einen TSL (aka SSLv2) verschlüsselten Transport
+                            verwenden soll oder nicht. Der Wert <constant>TRUE</constant> wird in
+                            einer Produktionsumgebung strengstens empfohlen um zu verhindern das
+                            Passwörter im Klartext übertragen werden. Der Standardwert ist
+                            <constant>FALSE</constant>, da Server typischerweise nach deren
+                            Installation erwarten das ein Zertifikat installiert wird. Die
+                            <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis>
+                            Optionen schließen sich gegenseitig aus. Die
+                            <emphasis>useStartTls</emphasis> Option sollte über
+                            <emphasis>useSsl</emphasis> favorisiert werden, aber nicht alle Server
+                            unterstützen diesen neueren Mechanismus.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry>useSsl</entry>
+                        <entry>
+                            Ob der LDAP Client einen SSL verschlüsselten Transport verwenden soll.
+                            Die <emphasis>useSsl</emphasis> und <emphasis>useStartTls</emphasis>
+                            Optionen schließen sich gegenseitig aus, aber
+                            <emphasis>useStartTls</emphasis> sollte favorisiert werden wenn der
+                            Server und die LDAP Bibliothek des Clients diese unterstützen. Dieser
+                            Wert ändert auch den Standardwert von <emphasis>port</emphasis> (siehe
+                            die <emphasis>port</emphasis> Beschreibung weiter oben).
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>username</emphasis></entry>
+                        <entry>
+                            Der DN des Accounts der verwendet wird um DN Account Loopups
+                            durchzuführen. LDAP Server die den Benutzernamen in in DN Form benötigen
+                            wenn "bind" durchgeführt wird, benötigen diese Option. Wenn
+                            <emphasis>bindRequiresDn</emphasis> <constant>TRUE</constant> ist,
+                            wird diese Option benötigt. Dieser Account muß kein privilegierter
+                            Account sein - ein Account mit nur-lese Zugriff zu Objekten unter
+                            <emphasis>baseDn</emphasis> ist alles was notwendig ist
+                            (und bevorzugt unter dem <emphasis>Prinzip des geringsten
+                            Privilegs</emphasis>).
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>password</emphasis></entry>
+                        <entry>
+                            Das Passwort des Accounts der verwendet wird um DN Lookups
+                            durchzuführen. Wenn diese Option nicht unterstützt wird, versucht der
+                            LDAP Client einen "anonymen bind" wenn DN Lookups durchgeführt werden.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>bindRequiresDn</emphasis></entry>
+                        <entry>
+                            Einige LDAP Server benötigen den zum Binden verwendeten Benutzernamen in
+                            der DN Form wie
+                            <emphasis>CN=Alice Baker,OU=Sales,DC=foo,DC=net</emphasis>
+                            (grundsätzlich alle Server <emphasis>außer</emphasis> AD). Wenn diese
+                            Option <constant>TRUE</constant> ist, instuiert dies
+                            <classname>Zend_Ldap</classname> das der DN automatisch empfangen wird,
+                            abhängig vom Benutzernamen der authentifiziert wird, wenn er nicht
+                            bereits in DN Form ist, und diesen dann wieder mit der richtigen DN zu
+                            binden. Der Standardwert ist <constant>FALSE</constant>. Aktuell ist nur
+                            von Microsoft Active Directory Server (ADS) bekannt das es den
+                            Benutzernamen <emphasis>nicht</emphasis> in der DN Form benötigt wenn
+                            gebunden wird, und deswegen kann diese Option mit AD auch
+                            <constant>FALSE</constant> sein (und sollte das auch, da das Empfangen
+                            des DN eine extra Anfrage zum Server benötigt). Andernfalls muß diese
+                            Option auf <constant>TRUE</constant> gesetzt werden (z.B. für OpenLDAP).
+                            Diese Option kontrolliert das Standard
+                            <emphasis>acountFilterFormat</emphasis> das verwendet wird wenn nach
+                            Accounts gesucht wird. Siehe auch die
+                            <emphasis>accountFilterFormat</emphasis> Option.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>baseDn</emphasis></entry>
+                        <entry>
+                            Der Ort vom DN unter dem alle Accounts die authentifiziert werden. Diese
+                            Option wird benötigt. Wenn man sich unsicher über den richtigen
+                            <emphasis>baseDn</emphasis> ist, sollte es genug sein Ihn von
+                            der DNS Domain des Benutzers der die <emphasis>DC=</emphasis>
+                            Komponenten verwedet abzuleiten. Wenn der Hauptname eines Benutzers
+                            <emphasis>alice@foo.net</emphasis> ist, sollte ein
+                            <emphasis>baseDn</emphasis> von <emphasis>DC=foo,DC=net</emphasis>
+                            funktionieren. Eine präzisere Ortsangabe
+                            (z.B. <emphasis>OU=Sales,DC=foo,DC=net</emphasis>) ist trotzdem
+                            effizienter.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>accountCanonicalForm</emphasis></entry>
+                        <entry>
+                            Ein Wert von 2, 3 oder 4 zeigt die Form zu der Account Namen
+                            authorisiert werden sollten nachdem die Authentifizierung erfolgreich
+                            war. Die Werte sind wie folgt: 2 für traditionelle Benutzernamen-Stil
+                            Namen (z.B., <emphasis>alice</emphasis>), 3 für Schrägstrich-Stil Namen
+                            (z.B., <emphasis>FOO\alice</emphasis>) oder 4 für Authentifiziert-Sil
+                            Namen (z.B., <emphasis>alice@foo.net</emphasis>). Der Standardwert ist 4
+                            (z.B., <emphasis>alice@foo.net</emphasis>). Mit einem Wert von 3, z.B.,
+                            wird die Identität die von
+                            <classname>Zend_Auth_Result::getIdentity()</classname> zurückgegeben
+                            wird (und <classname>Zend_Auth::getIdentity()</classname>, wenn
+                            <classname>Zend_Auth</classname> verwendet wird), immer
+                            <emphasis>FOO\alice</emphasis> sein, unabhängig von der Form in der
+                            Alice angegeben wurde, egal ob es <emphasis>alice</emphasis>,
+                            <emphasis>alice@foo.net</emphasis>, <emphasis>FOO\alice</emphasis>,
+                            <emphasis>FoO\aLicE</emphasis>, <emphasis>foo.net\alice</emphasis>, etc.
+                            Siehe das Kapitel <emphasis>Kanonisierung von Account Namen</emphasis>
+                            in der <classname>Zend_Ldap</classname> Dokumentation für Details. Bei
+                            der Verwendung von mehreren Sets von Serveroptionen ist es
+                            empfehlenswert, aber nicht notwendig, das die selbe
+                            <emphasis>accountCanonicalForm</emphasis> in allen
+                            Serveroptionen verwendet wird, sodas die sich ergebenden Benutzernamen
+                            immer auf die selbe Art und Weise kanonisiert werden (z.b. wenn man auf
+                            <emphasis>EXAMPLE\username</emphasis> mit einem AD Server kanonisiert,
+                            aber zu <emphasis>username@example.com</emphasis> mit einem OpenLDAP
+                            Server, kann das quirks für die High-Level Logik einer Anwendung sein).
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>accountDomainName</emphasis></entry>
+                        <entry>
+                            Der FDQN Domainname für welchen der Ziel LDAP Server eine Authorität ist
+                            (z.B., <filename>example.com</filename>). Diese Option wird verwendet um
+                            Namen zu kanonisieren sodas der Benutzername der vom Benutzer angeboten
+                            wird, wie es für das Binden notwendig ist, konvertiert werden kann. Er
+                            wird auch verwendet um festzustellen ob der Server eine Authorität für
+                            den angegebenen Benutzernamen ist (z.B., wenn
+                            <emphasis>accountDomainName</emphasis>
+                            <emphasis>foo.net</emphasis> ist und der angegebene Benutzer
+                            <emphasis>bob@bar.net</emphasis>, wird der Server nicht abgefragt, und
+                            das Ergebnis wird ein Fehler sein). Diese Option wird nicht benötigt,
+                            aber wenn Sie nicht angegeben wird, dann werden Benutzernamen in
+                            prinzipieller Namensform (z.B., <emphasis>alice@foo.net</emphasis>)
+                            nicht unterstützt. Es wird stark empfohlen das diese Option angegeben
+                            wird, da es viele Anwendungsfälle gibt die die Erstellung von
+                            prinzipieller Namensform benötigen.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>accountDomainNameShort</emphasis></entry>
+                        <entry>
+                            Die 'short' Domain für die der Ziel LDAP Server eine Authorität ist
+                            (z.B., <emphasis>FOO</emphasis>). Es ist z ubeachten das es ein 1:1
+                            Mapping zwischen <emphasis>accountDomainName</emphasis> und
+                            <emphasis>accountDomainNameShort</emphasis> existiert. Diese
+                            Option sollte verwendet werden um den NetBIOS Domainnamen für Windows
+                            Netzwerke zu spezifizieren, kann aber auch von nicht-AD Servern
+                            verwendet werden (z.B., für Konsistenz bei mehreren Sets von
+                            Serveroptionen bei dem Schrägstrich Stil
+                            <emphasis>accountCanonicalForm</emphasis>). Diese Option wird nicht
+                            benötigt, aber wenn Sie nicht angegeben wird, werden Benutzernamen im
+                            Schrägstrich Stil (z.B. <emphasis>FOO\alice</emphasis>) nicht
+                            unterstützt.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>accountFilterFormat</emphasis></entry>
+                        <entry>
+                            Der LDAP Suchfilter der für die Suche nach Accounts verwendet wird.
+                            Dieser String ist ein <ulink
+                                url="http://php.net/printf"><methodname>printf()</methodname></ulink>-Stil
+                            Ausdruck der ein '<emphasis>%s</emphasis>' enthalten muß um den
+                            Benutzernamen unterzubringen. Der Standardwert ist
+                            '<emphasis>(&amp;(objectClass=user)(sAMAccountName=%s))</emphasis>',
+                            ausgenommen <emphasis>bindRequiresDn</emphasis> wird auf
+                            <constant>TRUE</constant> gesetzt. In diesem Fall ist der Standardwert
+                            '<emphasis>(&amp;(objectClass=posixAccount)(uid=%s))</emphasis>'. Wenn,
+                            zum Beispiel, aus irgendeinem Grund
+                            <emphasis>bindRequiresDn = true</emphasis> mit AD verwendet werden soll,
+                            muß <emphasis>accountFilterFormat =
+                                '(&amp;(objectClass=user)(sAMAccountName=%s))</emphasis>' gesetzt
+                            werden.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry><emphasis>optReferrals</emphasis></entry>
+                        <entry>
+                            Wenn sie auf <constant>TRUE</constant> gesetzt wird, zeigt diese Option
+                            dem LDAP Client an, das Referenzen gefolgt werden soll. Der Standardwert
+                            ist <constant>FALSE</constant>.
+                        </entry>
+                    </row>
                 </tbody>
-              </tgroup>
-            </table>
-        </para>
+            </tgroup>
+        </table>
 
         <note>
             <para>
                 Wenn <emphasis>useStartTls = true</emphasis> oder
-                <emphasis>useSsl = true</emphasis> aktiviert ist, erzeugt der LDAP Client einen
-                Fehler der aussagt das er das Zertifikat des Servers nicht überprüfen kann.
-                Angenommen die PHP LDAP Erweiterung ist ultimativ verlinkt mit der OpenLDAP Client
+                <emphasis>useSsl = true</emphasis> aktiviert ist, erzeugt der
+                <acronym>LDAP</acronym> Client einen Fehler der aussagt das er das Zertifikat des
+                Servers nicht überprüfen kann. Angenommen die <acronym>PHP</acronym>
+                <acronym>LDAP</acronym> Erweiterung ist ultimativ verlinkt mit der OpenLDAP Client
                 Bibliothek, muß man um dieses Problem zu lösen
                 "<emphasis>TLS_REQCERT niemals</emphasis>" im OpenLDAP Client
                 <filename>ldap.conf</filename> setzen (und den Web Server restarten) um der
                 OpenLDAP Client Bibliothek anzuzeigen das man dem Server vertraut. Alternativ,
                 wenn man annimmt das der Server gehackt werden könnte kann das Basiszertifikat des
-                LDAP Servers exportiert und auf den Webserver gegeben werdensodas der OpenLDAP
-                Client die Identität des Servers prüfen kann.
+                <acronym>LDAP</acronym> Servers exportiert und auf den Webserver gegeben werden so
+                dass der OpenLDAP Client die Identität des Servers prüfen kann.
             </para>
         </note>
 
@@ -506,46 +528,48 @@ Array
             <classname>Zend_Auth_Adapter_Ldap</classname> sammelt Debug Informationen in seiner
             <methodname>authenticate()</methodname> Methode. Diese Information wird im
             <classname>Zend_Auth_Result</classname> Objekt als Nachrichten gespeichert. Das von
-            <classname>Zend_Auth_Result::getMessages()</classname> zurückgegebene Array kann wie
+            <methodname>Zend_Auth_Result::getMessages()</methodname> zurückgegebene Array kann wie
             folgt beschrieben werden:
+        </para>
 
-            <table id="zend.auth.adapter.ldap.debugging.table">
-              <title>Debug Nachrichten</title>
-              <tgroup cols="2">
+        <table id="zend.auth.adapter.ldap.debugging.table">
+            <title>Debug Nachrichten</title>
+            <tgroup cols="2">
                 <thead>
-                  <row>
-                    <entry>Array Index der Nachricht</entry>
-                    <entry>Beschreibung</entry>
-                  </row>
+                    <row>
+                        <entry>Array Index der Nachricht</entry>
+                        <entry>Beschreibung</entry>
+                    </row>
                 </thead>
                 <tbody>
-                  <row>
-                    <entry>Index 0</entry>
-                    <entry>
-                        Eine generelle, Benutzerfreundliche Meldung die für die Anzeige für
-                        Benutzer passt (z.B. "Ungültige Anmeldedaten"). Wenn die Authentifizierung
-                        erfolgreich ist, dann ist dieser String leer.
-                    </entry>
-                  </row>
-                  <row>
+                    <row>
+                        <entry>Index 0</entry>
+                        <entry>
+                            Eine generelle, Benutzerfreundliche Meldung die für die Anzeige für
+                            Benutzer passt (z.B. "Ungültige Anmeldedaten"). Wenn die
+                            Authentifizierung erfolgreich ist, dann ist dieser String leer.
+                        </entry>
+                    </row>
+                    <row>
                     <entry>Index 1</entry>
-                    <entry>
-                        Eine detailiertere Fehlermeldung die nicht für die Anzeige für Benutzer
-                        hergenommen werden kann, die aber mitgeloggt werden sollte zum Vorteil des
-                        Server Operators. Wenn die Authentifizierung erfolgreich war, ist dieser
-                        String leer.
-                    </entry>
-                  </row>
-                  <row>
-                    <entry>Indezes 2 und höher</entry>
-                    <entry>
-                        Alle Logmeldungen in Reihenfolge starten bei Index 2.
-                    </entry>
-                  </row>
+                        <entry>
+                            Eine detailiertere Fehlermeldung die nicht für die Anzeige für Benutzer
+                            hergenommen werden kann, die aber mitgeloggt werden sollte zum Vorteil
+                            des Server Operators. Wenn die Authentifizierung erfolgreich war, ist
+                            dieser String leer.
+                        </entry>
+                    </row>
+                    <row>
+                        <entry>Indezes 2 und höher</entry>
+                        <entry>
+                            Alle Logmeldungen in Reihenfolge starten bei Index 2.
+                        </entry>
+                    </row>
                 </tbody>
-              </tgroup>
-            </table>
+            </tgroup>
+        </table>
 
+        <para>
             Aus der Praxis heraus sollte der Index 0 dem Benutzer angezeigt werden (z.B. bei
             Verwendung des FlashMessenger Helfers), Index 1 sollte geloggt werden und, wenn die
             Debugging Information gesammelt wird, sollten die Indezes 2 und höher auch geloggt
@@ -563,83 +587,85 @@ Array
             <title>Optionen für Active Directory</title>
 
             <para>
-                Für ADS sind die folgenden Optionen beachtenswert:
+                Für <acronym>ADS</acronym> sind die folgenden Optionen beachtenswert:
+            </para>
 
-                <table id="zend.auth.adapter.ldap.options-common-server-specific.active-directory.table">
-                  <title>Optionen für Active Directory</title>
-                  <tgroup cols="2">
+            <table id="zend.auth.adapter.ldap.options-common-server-specific.active-directory.table">
+                <title>Optionen für Active Directory</title>
+                <tgroup cols="2">
                     <thead>
-                      <row>
-                        <entry>Name</entry>
-                        <entry>Zusätzliche Notizen</entry>
-                      </row>
+                        <row>
+                            <entry>Name</entry>
+                            <entry>Zusätzliche Notizen</entry>
+                        </row>
                     </thead>
                     <tbody>
-                      <row>
-                        <entry><emphasis>host</emphasis></entry>
-                        <entry>
-                            Wie bei allen Servern, wird diese Option benötigt.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>useStartTls</emphasis></entry>
-                        <entry>
-                            Zum Zwecke der Sicherheit, sollte das <constant>TRUE</constant> sein
-                            wenn der Server das notwendige Zertifikat installiert hat.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>useSsl</emphasis></entry>
-                        <entry>
-                            Möglicherweise als Alternative zu <emphasis>useStartTls</emphasis> zu
-                            verwenden (siehe davor).
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>baseDn</emphasis></entry>
-                        <entry>
-                            Wie bei allen Servern, wird diese Option benötigt. Standardmäßig
-                            platziert AD alle Benutzer Accounts unter dem
-                            <emphasis>Users</emphasis> Container (z.B.,
-                            <emphasis>CN=Users,DC=foo,DC=net</emphasis>), aber der Standard ist in
-                            größeren Organisationen nicht üblich. Der AD Administrator sollte nach
-                            der besten DN für Accounts für die eigene Anwendung gefragt werden.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountCanonicalForm</emphasis></entry>
-                        <entry>
-                            Das wird man normalerweise für Schrägstrich-Stil Namen auf 3 stellen
-                            (z.B., <emphasis>FOO\alice</emphasis>), was für Windows Benutzer am
-                            bekanntesten ist. Man sollte <emphasis>nicht</emphasis> die
-                            unqualifizierte Form 2 verwenden (z.B., <emphasis>alice</emphasis>),
-                            da das anderen Benutzern Zugriff auf die Anwendung geben würde, wenn
-                            Sie den gleichen Benutzernamen in anderen vertrauten Domains haben
-                            (z.B., <emphasis>BAR\alice</emphasis> und
-                            <emphasis>FOO\alice</emphasis> würden als der gleiche Benutzer
-                            behandelt). (siehe auch die Notiz anbei.)
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountDomainName</emphasis></entry>
-                        <entry>
-                            Das wird mit AD benötigt, ausser
-                            <emphasis>accountCanonicalForm</emphasis> 2 wird
-                            verwendet, was wiederum nicht eingesetzt werden sollte.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountDomainNameShort</emphasis></entry>
-                        <entry>
-                            Der NetBIOS Name der Domain in der die Benutzer sind und für den der AD
-                            Server die Authorität ist. Das wird benötigt wenn der Schrägstrich-Stil
-                            <emphasis>accountCanonicalForm</emphasis> verwendet wird.
-                        </entry>
-                      </row>
+                        <row>
+                            <entry><emphasis>host</emphasis></entry>
+                            <entry>
+                                Wie bei allen Servern, wird diese Option benötigt.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>useStartTls</emphasis></entry>
+                            <entry>
+                                Zum Zwecke der Sicherheit, sollte das <constant>TRUE</constant> sein
+                                wenn der Server das notwendige Zertifikat installiert hat.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>useSsl</emphasis></entry>
+                            <entry>
+                                Möglicherweise als Alternative zu <emphasis>useStartTls</emphasis>
+                                zu verwenden (siehe davor).
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>baseDn</emphasis></entry>
+                            <entry>
+                                Wie bei allen Servern, wird diese Option benötigt. Standardmäßig
+                                platziert AD alle Benutzer Accounts unter dem
+                                <emphasis>Users</emphasis> Container (z.B.,
+                                <emphasis>CN=Users,DC=foo,DC=net</emphasis>), aber der Standard ist
+                                in größeren Organisationen nicht üblich. Der AD Administrator sollte
+                                nach der besten DN für Accounts für die eigene Anwendung gefragt
+                                werden.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountCanonicalForm</emphasis></entry>
+                            <entry>
+                                Das wird man normalerweise für Schrägstrich-Stil Namen auf 3 stellen
+                                (z.B., <emphasis>FOO\alice</emphasis>), was für Windows Benutzer am
+                                bekanntesten ist. Man sollte <emphasis>nicht</emphasis> die
+                                unqualifizierte Form 2 verwenden (z.B., <emphasis>alice</emphasis>),
+                                da das anderen Benutzern Zugriff auf die Anwendung geben würde, wenn
+                                Sie den gleichen Benutzernamen in anderen vertrauten Domains haben
+                                (z.B., <emphasis>BAR\alice</emphasis> und
+                                <emphasis>FOO\alice</emphasis> würden als der gleiche Benutzer
+                                behandelt). (siehe auch die Notiz anbei.)
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountDomainName</emphasis></entry>
+                            <entry>
+                                Das wird mit AD benötigt, ausser
+                                <emphasis>accountCanonicalForm</emphasis> 2 wird
+                                verwendet, was wiederum nicht eingesetzt werden sollte.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountDomainNameShort</emphasis></entry>
+                            <entry>
+                                Der NetBIOS Name der Domain in der die Benutzer sind und für den der
+                                AD Server die Authorität ist. Das wird benötigt wenn der
+                                Schrägstrich-Stil <emphasis>accountCanonicalForm</emphasis>
+                                verwendet wird.
+                            </entry>
+                        </row>
                     </tbody>
-                  </tgroup>
-                </table>
-            </para>
+                </tgroup>
+            </table>
 
             <note>
                 <para>
@@ -662,107 +688,106 @@ Array
             <title>Optionen für OpenLDAP</title>
 
             <para>
-                Für OpenLDAP oder einen generellen LDAP Server der ein typisches posixAccount
-                Stil Schema verwendet sind die folgenden Optionen beachtenswert:
+                Für OpenLDAP oder einen generellen <acronym>LDAP</acronym> Server der ein typisches
+                posixAccount Stil Schema verwendet sind die folgenden Optionen beachtenswert:
+            </para>
 
-                <table id="zend.auth.adapter.ldap.options-common-server-specific.openldap.table">
-                  <title>Optionen für OpenLDAP</title>
-                  <tgroup cols="2">
+            <table id="zend.auth.adapter.ldap.options-common-server-specific.openldap.table">
+                <title>Optionen für OpenLDAP</title>
+                <tgroup cols="2">
                     <thead>
-                      <row>
-                        <entry>Name</entry>
-                        <entry>Zusätzliche Notizen</entry>
-                      </row>
+                        <row>
+                            <entry>Name</entry>
+                            <entry>Zusätzliche Notizen</entry>
+                        </row>
                     </thead>
                     <tbody>
-                      <row>
-                        <entry><emphasis>host</emphasis></entry>
-                        <entry>
-                            Wie bei allen Servern, wird diese Option benötigt.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>useStartTls</emphasis></entry>
-                        <entry>
-                            Zum Zwecke der Sicherheit, sollte das <constant>TRUE</constant> sein
-                            wenn der Server das notwendige Zertifikat installiert hat.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>useSsl</emphasis></entry>
-                        <entry>
-                            Möglicherweise als Alternative zu <emphasis>useStartTls</emphasis> zu
-                            verwenden (siehe davor).
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>username</emphasis></entry>
-                        <entry>
-                            Benötigt und muß ein DN sein, da OpenLDAP den Benutzernamen in DN Form
-                            benötigt wenn ein Binden durchgeführt wird. Es sollte versucht werden
-                            einen nicht privelegierten Account zu verwenden.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>password</emphasis></entry>
-                        <entry>
-                            Das Passwort das zum Benutzernamen von oben gehört. Es kann aber
-                            unterdrückt werden wenn der LDAP Server anonymes Binden bei Abfragen zu
-                            Benutzer Accounts erlaubt.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>bindRequiresDn</emphasis></entry>
-                        <entry>
-                            Benötigt und muß <constant>TRUE</constant> sein, da OpenLDAP den Benutzernamen
-                            in DN Form benötigt wenn ein Binden durchgeführt wird.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>baseDn</emphasis></entry>
-                        <entry>
-                            Wie bei allen Servern, wird diese Option benötigt und zeigt den DN in
-                            dem alle Accounts die authentifiziert werden enthalten sind.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountCanonicalForm</emphasis></entry>
-                        <entry>
-                            Optional, aber der Standardwert ist 4 (prinzipielle-Stil Namen wie
-                            <emphasis>alice@foo.net</emphasis>) und könnte für die Benutzer nicht
-                            ideal sein wenn diese Schrägstrich-Stil Namen verwendetn (z.B.,
-                            <emphasis>FOO\alice</emphasis>). Für Schrägstrich-Stil Namen sollte der
-                            Wert 3 verwendet werden.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountDomainName</emphasis></entry>
-                        <entry>
-                            Benötigt es sei denn man verwendet
-                            <emphasis>accountCanonicalForm</emphasis> 2, was nicht
-                            zu empfehlen ist.
-                        </entry>
-                      </row>
-                      <row>
-                        <entry><emphasis>accountDomainNameShort</emphasis></entry>
-                        <entry>
-                            Wenn AD auch nicht verwendet wird, wird dieser Wert nicht benötigt.
-                            Andernfalls, wenn
-                            <emphasis>accountCanonicalForm</emphasis> 3 verwendet
-                            wird, wird diese Option benötigt und sollte ein Kurzname sein der
-                            adäquat zu <emphasis>accountDomainName</emphasis>
-                            korrespondiert (z.B., wenn
-                            <emphasis>accountDomainName</emphasis>
-                            <emphasis>foo.net</emphasis> ist, wäre ein guter
-                            <emphasis>accountDomainNameShort</emphasis> Wert
-                            <emphasis>FOO</emphasis>).
-                        </entry>
-                      </row>
+                        <row>
+                            <entry><emphasis>host</emphasis></entry>
+                            <entry>
+                                Wie bei allen Servern, wird diese Option benötigt.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>useStartTls</emphasis></entry>
+                            <entry>
+                                Zum Zwecke der Sicherheit, sollte das <constant>TRUE</constant> sein
+                                wenn der Server das notwendige Zertifikat installiert hat.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>useSsl</emphasis></entry>
+                            <entry>
+                                Möglicherweise als Alternative zu <emphasis>useStartTls</emphasis>
+                                zu verwenden (siehe davor).
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>username</emphasis></entry>
+                            <entry>
+                                Benötigt und muß ein DN sein, da OpenLDAP den Benutzernamen in DN
+                                Form benötigt wenn ein Binden durchgeführt wird. Es sollte versucht
+                                werden einen nicht privilegierten Account zu verwenden.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>password</emphasis></entry>
+                            <entry>
+                                Das Passwort das zum Benutzernamen von oben gehört. Es kann aber
+                                unterdrückt werden wenn der LDAP Server anonymes Binden bei Abfragen
+                                zu Benutzer Accounts erlaubt.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>bindRequiresDn</emphasis></entry>
+                            <entry>
+                                Benötigt und muß <constant>TRUE</constant> sein, da OpenLDAP den
+                                Benutzernamen in DN Form benötigt wenn ein Binden durchgeführt wird.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>baseDn</emphasis></entry>
+                            <entry>
+                                Wie bei allen Servern, wird diese Option benötigt und zeigt den DN
+                                in dem alle Accounts die authentifiziert werden enthalten sind.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountCanonicalForm</emphasis></entry>
+                            <entry>
+                                Optional, aber der Standardwert ist 4 (prinzipielle-Stil Namen wie
+                                <emphasis>alice@foo.net</emphasis>) und könnte für die Benutzer
+                                nicht ideal sein wenn diese Schrägstrich-Stil Namen verwendetn
+                                (z.B., <emphasis>FOO\alice</emphasis>). Für Schrägstrich-Stil Namen
+                                sollte der Wert 3 verwendet werden.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountDomainName</emphasis></entry>
+                            <entry>
+                                Benötigt es sei denn man verwendet
+                                <emphasis>accountCanonicalForm</emphasis> 2, was nicht
+                                zu empfehlen ist.
+                            </entry>
+                        </row>
+                        <row>
+                            <entry><emphasis>accountDomainNameShort</emphasis></entry>
+                            <entry>
+                                Wenn AD auch nicht verwendet wird, wird dieser Wert nicht benötigt.
+                                Andernfalls, wenn
+                                <emphasis>accountCanonicalForm</emphasis> 3 verwendet
+                                wird, wird diese Option benötigt und sollte ein Kurzname sein der
+                                adäquat zu <emphasis>accountDomainName</emphasis>
+                                korrespondiert (z.B., wenn
+                                <emphasis>accountDomainName</emphasis>
+                                <emphasis>foo.net</emphasis> ist, wäre ein guter
+                                <emphasis>accountDomainNameShort</emphasis> Wert
+                                <emphasis>FOO</emphasis>).
+                            </entry>
+                        </row>
                     </tbody>
-                  </tgroup>
-                </table>
-
-            </para>
+                </tgroup>
+            </table>
 
         </sect3>
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-ConsumingAtom.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.consuming-atom">
     <title>Einen Atom Feed konsumieren</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-ConsumingAtomSingle.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.consuming-atom-single-entry">
     <title>Einen einzelnen Atom Eintrag konsumieren</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-ConsumingRss.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15742 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.consuming-rss">
     <title>Einen RSS Feed konsumieren</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-CustomFeed.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.custom-feed">
     <title>Eigene Klassen für Feeds und Einträge</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-FindFeeds.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.findFeeds">
     <title>Feeds von Websites abrufen</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-Importing.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.importing">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Feed-ModifyingFeed.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.feed.modifying-feed">
     <title>Verändern der Feed- und Eintragsstruktur</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_File_Transfer-Filters.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.file.transfer.filters">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_File_Transfer-Introduction.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15713 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.file.transfer.introduction">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_File_Transfer-Migration.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15741 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.file.transfer.migration">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_File_Transfer-Validators.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.file.transfer.validators">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-Decryption.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.filter.set.decrypt">
     <title>Decrypt</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-Encryption.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.filter.set.encrypt">
     <title>Encrypt</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-FilterChains.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.filter_chains">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-Inflector.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.inflector">
     <title>Zend_Filter_Inflector</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-LocalizedToNormalized.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.filter.set.localizedtonormalized">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-NormalizedToLocalized.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.filter.set.normalizedtolocalized">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-RealPath.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15741 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect2 id="zend.filter.set.realpath">
     <title>RealPath</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-Set.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15311 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.set" xmlns:xi="http://www.w3.org/2001/XInclude">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter-WritingFilters.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.writing_filters">
 

+ 1 - 1
documentation/manual/de/module_specs/Zend_Filter_Input.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15742 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.filter.input">
     <title>Zend_Filter_Input</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-Elements.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15742 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.elements">
     <title>Erstellen von Form Elementen mit Hilfe von Zend_Form_Element</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-Forms.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.forms">
     <title>Erstellen von Form durch Verwendung von Zend_Form</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-I18n.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.i18n">
     <title>Internationalisierung von Zend_Form</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-Introduction.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15103 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.introduction">
     <title>Zend_Form</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-QuickStart.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.quickstart">
     <title>Schnellstart mit Zend_Form</title>

+ 1 - 1
documentation/manual/de/module_specs/Zend_Form-StandardElements.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15854 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.form.standardElements">
     <title>Standard Form Elemente die mit dem With Zend Framework ausgeliefert werden</title>

+ 22 - 1
documentation/manual/de/module_specs/Zend_Locale-Functions.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="UTF-8"?>
-<!-- EN-Revision: 15831 -->
+<!-- EN-Revision: 15855 -->
 <!-- Reviewed: no -->
 <sect1 id="zend.locale.functions">
 
@@ -482,6 +482,16 @@ print Zend_Locale::getTranslation('de', 'language', 'zh');
                         </entry>
                     </row>
                     <row>
+                        <entry><emphasis>DateInterval</emphasis></entry>
+                        <entry>
+                            Gibt eine Liste von Datums- oder Zeitformaten zurück die verwendet
+                            werden wenn man Intervalle darstellen will. Die Liste ist ein
+                            mehrdimentionales Array wobei die erste Dimension das Format des
+                            Intervalls und die zweite Dimension das Token mit der größten
+                            Differenz ist.
+                        </entry>
+                    </row>
+                    <row>
                         <entry><emphasis>Field</emphasis></entry>
                         <entry>
                             Gibt eine lokalisierte Liste von Datumsfelder zurück die verwendet
@@ -1055,6 +1065,17 @@ print Zend_Locale::getTranslation('de', 'language', 'zh');
                         </entry>
                     </row>
                     <row>
+                        <entry><emphasis>DateInterval</emphasis></entry>
+                        <entry>
+                            Gibt das Intervallformat für ein gegebenes Datums- oder Zeitformat
+                            zurück. Der erste Wert ist das Kalenderformat, normalerweise
+                            'gregorian'. Der zweite Wert ist das Intervallformat, und der dritte
+                            Wert ist das Token mit der größten Different. Zum Beispiel:
+                            array('gregorian', 'yMMMM', 'y') gibt das Intervallformat für das
+                            Datumsformat 'yMMMM' zurück, wobei 'y' die größte Differenz hat.
+                        </entry>
+                    </row>
+                    <row>
                         <entry><emphasis>Field</emphasis></entry>
                         <entry>
                             Gibt ein übersetztes Datumsfeld zurück welches verwendet werden kann um