Zend_Auth_Adapter_Digest.xml 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 15860 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.auth.adapter.digest">
  5. <title>Autenticación "Digest"</title>
  6. <sect2 id="zend.auth.adapter.digest.introduction">
  7. <title>Introducción</title>
  8. <para> La <ulink
  9. url="http://en.wikipedia.org/wiki/Digest_access_authentication"
  10. >Autenticación "Digest"</ulink> es un método de la autenticación
  11. HTTP que mejora la <ulink
  12. url="http://en.wikipedia.org/wiki/Basic_authentication_scheme"
  13. >Autenticación Básica</ulink> proporcionando una manera de
  14. autenticar sin tener que transmitir la contraseña de manera clara a
  15. través de la red. </para>
  16. <para> Este adaptador permite la autentificación contra archivos de
  17. texto que contengan líneas que tengan los elementos básicos de la
  18. autenticación "Digest":
  19. </para>
  20. <itemizedlist>
  21. <listitem>
  22. <para> username, tal como
  23. "<emphasis><filename>joe.user</filename></emphasis>" </para>
  24. </listitem>
  25. <listitem>
  26. <para> realm, tal como "<emphasis>Administrative Area</emphasis>" </para>
  27. </listitem>
  28. <listitem>
  29. <para> Hash <acronym>MD5</acronym> del username, realm y password,
  30. separados por dos puntos </para>
  31. </listitem>
  32. </itemizedlist>
  33. <para>
  34. Los elementos anteriores están separados por dos
  35. puntos, como en el ejemplo siguiente (en el que la contraseña es
  36. "<emphasis>somePassword</emphasis>"): </para>
  37. <programlisting language="txt"><![CDATA[
  38. someUser:Some Realm:fde17b91c3a510ecbaf7dbd37f59d4f8
  39. ]]></programlisting>
  40. </sect2>
  41. <sect2 id="zend.auth.adapter.digest.specifics">
  42. <title>Detalles Específicos</title>
  43. <para> El adaptador de autenticación "Digest",
  44. <classname>Zend_Auth_Adapter_Digest</classname>, requiere varios
  45. parámetros de entrada:
  46. </para>
  47. <itemizedlist>
  48. <listitem>
  49. <para> filename - Nombre del archivo contra el que se
  50. realiza la autenticación de las consultas </para>
  51. </listitem>
  52. <listitem>
  53. <para> realm - Domino de la autenticación "Digest" </para>
  54. </listitem>
  55. <listitem>
  56. <para> username - Usuario de la autenticación "Digest"
  57. </para>
  58. </listitem>
  59. <listitem>
  60. <para> password - Contraseña para el usuario del dominio
  61. </para>
  62. </listitem>
  63. </itemizedlist>
  64. <para>
  65. Estos parámetros deben ser establecidos antes de
  66. llamar a <methodname>authenticate()</methodname>. </para>
  67. </sect2>
  68. <sect2 id="zend.auth.adapter.digest.identity">
  69. <title>Identidad</title>
  70. <para> El adaptador de autenticación "Digest" devuelve un objeto
  71. <classname>Zend_Auth_Result</classname>, que ha sido rellenado
  72. con la identidad como un array que tenga claves
  73. <emphasis>realm</emphasis> y
  74. <emphasis>username</emphasis>. Los respectivos valores del
  75. array asociados con esas claves correspondes con los valores fijados
  76. andes de llamar a <methodname>authenticate()</methodname>. </para>
  77. <programlisting language="php"><![CDATA[
  78. $adapter = new Zend_Auth_Adapter_Digest($filename,
  79. $realm,
  80. $username,
  81. $password);
  82. $result = $adapter->authenticate();
  83. $identity = $result->getIdentity();
  84. print_r($identity);
  85. /*
  86. Array
  87. (
  88. [realm] => Some Realm
  89. [username] => someUser
  90. )
  91. */
  92. ]]></programlisting>
  93. </sect2>
  94. </sect1>