Zend_Auth_Adapter_Digest.xml 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <!-- EN-Revision: 24249 -->
  4. <sect1 id="zend.auth.adapter.digest">
  5. <title>ダイジェスト認証</title>
  6. <sect2 id="zend.auth.adapter.digest.introduction">
  7. <title>導入</title>
  8. <para>
  9. <ulink url="http://en.wikipedia.org/wiki/Digest_access_authentication">ダイジェスト認証</ulink>
  10. は、
  11. <ulink url="http://ja.wikipedia.org/wiki/Basic%E8%AA%8D%E8%A8%BC">ベーシック認証</ulink>
  12. を改良した <acronym>HTTP</acronym> 認証方式です。
  13. パスワードを平文テキストでネットワークに流すことなく認証を行えます。
  14. </para>
  15. <para>
  16. このアダプタは、テキストファイルをもとにした認証を行います。
  17. このテキストファイルには、ダイジェスト認証の基本要素が書かれています。
  18. </para>
  19. <itemizedlist>
  20. <listitem>
  21. <para>
  22. "<emphasis><filename>joe.user</filename></emphasis>" のようなユーザ名。
  23. </para>
  24. </listitem>
  25. <listitem>
  26. <para>
  27. "<emphasis>Administrative Area</emphasis>" のようなレルム。
  28. </para>
  29. </listitem>
  30. <listitem>
  31. <para>
  32. ユーザ名、レルムおよびパスワードをコロンで区切った文字列の <acronym>MD5</acronym> ハッシュ。
  33. </para>
  34. </listitem>
  35. </itemizedlist>
  36. <para>
  37. それぞれの要素はコロンで区切り、たとえば次のようになります
  38. (この例のパスワードは "<emphasis>somePassword</emphasis>") です。
  39. </para>
  40. <programlisting><![CDATA[
  41. someUser:Some Realm:fde17b91c3a510ecbaf7dbd37f59d4f8
  42. ]]></programlisting>
  43. </sect2>
  44. <sect2 id="zend.auth.adapter.digest.specifics">
  45. <title>使用</title>
  46. <para>
  47. ダイジェスト認証アダプタ <classname>Zend_Auth_Adapter_Digest</classname>
  48. には、以下の入力パラメータが必要です。
  49. </para>
  50. <itemizedlist>
  51. <listitem>
  52. <para>
  53. filename - 認証の問い合わせ先となるファイル名。
  54. </para>
  55. </listitem>
  56. <listitem>
  57. <para>
  58. realm - ダイジェスト認証のレルム。
  59. </para>
  60. </listitem>
  61. <listitem>
  62. <para>
  63. username - ダイジェスト認証のユーザ名。
  64. </para>
  65. </listitem>
  66. <listitem>
  67. <para>
  68. password - 指定したレルムにおける、ユーザのパスワード。
  69. </para>
  70. </listitem>
  71. </itemizedlist>
  72. <para>
  73. これらのパラメータは、<methodname>authenticate()</methodname>
  74. をコールする前に設定しなければなりません。
  75. </para>
  76. </sect2>
  77. <sect2 id="zend.auth.adapter.digest.identity">
  78. <title>ID</title>
  79. <para>
  80. ダイジェスト認証アダプタは <classname>Zend_Auth_Result</classname>
  81. オブジェクトを返します。ここに、認証された ID の情報が
  82. 配列として含まれます。配列のキーは
  83. <emphasis>realm</emphasis> および <emphasis>username</emphasis> です。
  84. これらのキーに対応する配列の値は、
  85. <methodname>authenticate()</methodname> をコールする前に設定したものに対応します。
  86. </para>
  87. <programlisting language="php"><![CDATA[
  88. $adapter = new Zend_Auth_Adapter_Digest($filename,
  89. $realm,
  90. $username,
  91. $password);
  92. $result = $adapter->authenticate();
  93. $identity = $result->getIdentity();
  94. print_r($identity);
  95. /*
  96. Array
  97. (
  98. [realm] => Some Realm
  99. [username] => someUser
  100. )
  101. */
  102. ]]></programlisting>
  103. </sect2>
  104. </sect1>
  105. <!--
  106. vim:se ts=4 sw=4 et:
  107. -->