Zend_Auth_Adapter_Digest.xml 4.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.auth.adapter.digest">
  5. <title>Digest Authentication</title>
  6. <sect2 id="zend.auth.adapter.digest.introduction">
  7. <title>Einführung</title>
  8. <para>
  9. <ulink url="http://en.wikipedia.org/wiki/Digest_access_authentication">Digest
  10. Authentifizierung</ulink> ist eine Methode der <acronym>HTTP</acronym>
  11. Authentifizierung welche die <ulink
  12. url="http://en.wikipedia.org/wiki/Basic_authentication_scheme">Basis
  13. Authentifizierung</ulink> verbessert indem ein Weg angeboten wird um
  14. Authentifizierungen, ohne die Übermittlung des Passwortes als Klartext über das
  15. Netzwerk, durchzuführen.
  16. </para>
  17. <para>
  18. Dieser Adapter erlaubt Authentifizierungen gegen Textdateien die Zeilen enthalten die
  19. folgende Basiselemente der Digest Authentifizierung enthalten:
  20. </para>
  21. <itemizedlist>
  22. <listitem>
  23. <para>
  24. Benutzername, wie z.B. "<emphasis><filename>joe.user</filename></emphasis>"
  25. </para>
  26. </listitem>
  27. <listitem>
  28. <para>
  29. Bereich, wie z.B. "<emphasis>Administrativer Bereich</emphasis>"
  30. </para>
  31. </listitem>
  32. <listitem>
  33. <para>
  34. <acronym>MD5</acronym> Hash von Benutzername, Bereich und Passwort, getrennt
  35. durch Doppelpunkte
  36. </para>
  37. </listitem>
  38. </itemizedlist>
  39. <para>
  40. Die obigen Elemente werden durch Doppelpunkte getrennt, wie im folgenden Beispiel (in
  41. dem das Passwort "<emphasis>irgendeinPasswort</emphasis>" ist):
  42. </para>
  43. <programlisting language="txt"><![CDATA[
  44. irgendeinBenutzer:Irgendein Bereich:fde17b91c3a510ecbaf7dbd37f59d4f8
  45. ]]></programlisting>
  46. </sect2>
  47. <sect2 id="zend.auth.adapter.digest.specifics">
  48. <title>Spezifisches</title>
  49. <para>
  50. Der Digest Authentifizierungs Adapter, <classname>Zend_Auth_Adapter_Digest</classname>,
  51. benötigt verschiedene Eingabeparameter:
  52. </para>
  53. <itemizedlist>
  54. <listitem>
  55. <para>
  56. filename - Der Dateiename gegen den Authentifizierungs-Anfragen durchgeführt
  57. werden
  58. </para>
  59. </listitem>
  60. <listitem>
  61. <para>
  62. realm - Digest Authentifizierungs Bereich
  63. </para>
  64. </listitem>
  65. <listitem>
  66. <para>
  67. username - Digest Authentifizierungs Benutzer
  68. </para>
  69. </listitem>
  70. <listitem>
  71. <para>
  72. password - Passwort für den Benutzer des Bereichs
  73. </para>
  74. </listitem>
  75. </itemizedlist>
  76. <para>
  77. Diese Parameter müssen vor dem Aufruf von <methodname>authenticate()</methodname>
  78. gesetzt werden.
  79. </para>
  80. </sect2>
  81. <sect2 id="zend.auth.adapter.digest.identity">
  82. <title>Identität</title>
  83. <para>
  84. Der Digest Authentifizierungs Adapter gibt ein <classname>Zend_Auth_Result</classname>
  85. Objekt zurück, welches mit der Identität wird wobei dieses als Arry mit Schlüssel von
  86. <emphasis>realm</emphasis> und <emphasis>username</emphasis> veröffentlicht wird. Die
  87. entsprechenden Array Werte welche diesen Schlüsseln zugeordnet sind korrespondieren mit
  88. den Werte die vorher durch den Aufruf von <methodname>authenticate()</methodname>
  89. gesetzt wurden.
  90. </para>
  91. <programlisting language="php"><![CDATA[
  92. $adapter = new Zend_Auth_Adapter_Digest($filename,
  93. $realm,
  94. $username,
  95. $password);
  96. $result = $adapter->authenticate();
  97. $identity = $result->getIdentity();
  98. print_r($identity);
  99. /*
  100. Array
  101. (
  102. [realm] => Irgendein Bereich
  103. [username] => irgendeinBenutzer
  104. )
  105. */
  106. ]]></programlisting>
  107. </sect2>
  108. </sect1>