Zend_OpenId-Introduction.xml 7.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect1 id="zend.openid.introduction">
  5. <title>Introduction</title>
  6. <para>
  7. <classname>Zend_OpenId</classname> est le composant de Zend Framework qui propose une
  8. <acronym>API</acronym> simple pour l'utilisation de la technologie OpenID dans son applicatif internet.
  9. </para>
  10. <sect2 id="zend.openid.introduction.what">
  11. <title>Qu'est ce qu'OpenID ?</title>
  12. <para>
  13. OpenID est un ensemble de protocole permettant une gestion centralisée de
  14. l'identification d'une personne. Ces protocoles permettent la création d'une identité en
  15. ligne, via un fournisseur d'identité. Cette identité peut alors être utilisée n'importe
  16. où, où OpenID est supporté. Sur les sites utilisant OpenID, il n'est plus nécessaire de
  17. se souvenir d'identifiants différents, la seule et unique identité OpenID est la même
  18. partout. Une identité OpenID est en général matérialisée par une <acronym>URL</acronym> et un utilisateur
  19. est libre de choisir son fournisseur OpenID, ou alors même de créer son propre serveur
  20. d'identification OpenID, ceci ne nécessitant pas d'autorisation centrale.
  21. </para>
  22. <para>
  23. Visitez donc <ulink url="http://www.openid.net/">le site officiel de
  24. OpenID</ulink> pour plus d'information, voyez aussi <ulink
  25. url="http://www.openidbook.com/">le OpenID Book, par Rafeeq Rehman</ulink> ou <ulink
  26. url="http://www.openidfrance.fr">OpenIDFrance</ulink>.
  27. </para>
  28. </sect2>
  29. <sect2 id="zend.openid.introduction.how">
  30. <title>Comment cela fonctionne-t-il ?</title>
  31. <para>
  32. Le but de <classname>Zend_OpenId</classname> est d'implémenter le protocole
  33. d'identification OpenID, comme décrit dans le diagramme suivant :
  34. </para>
  35. <para>
  36. <inlinegraphic align="center" fileref="figures/zend.openid.protocol.jpg"
  37. format="JPEG" scale="100" valign="middle" width="559" />
  38. </para>
  39. <orderedlist>
  40. <listitem>
  41. <para>
  42. L'authentification est initialisée par l'utilisateur final, qui passe son
  43. identifiant OpenID, via son navigateur.
  44. </para>
  45. </listitem>
  46. <listitem>
  47. <para>
  48. Le service protégé par OpenID normalise l'identifiant de l'utilisateur. Il
  49. en résulte un identifiant validé, une <acronym>URL</acronym> du serveur OpenID, et une version du
  50. protocole OpenID.
  51. </para>
  52. </listitem>
  53. <listitem>
  54. <para>
  55. Le service protégé par OpenID établit optionnellement une connexion avec
  56. le serveur OpenID en utilisant des clés <ulink
  57. url="http://fr.wikipedia.org/wiki/%C3%89change_de_cl%C3%A9s_Diffie-Hellman">Diffie-Hellman</ulink>.
  58. Les deux parties partagent alors un "secret" utilisé pour signer et vérifier les
  59. messages suivants.
  60. </para>
  61. </listitem>
  62. <listitem>
  63. <para>
  64. Le service protégé par OpenID redirige le navigateur vers l'URL du serveur
  65. OpenID, en effectuant une requête d'authentification.
  66. </para>
  67. </listitem>
  68. <listitem>
  69. <para>
  70. Le serveur OpenID vérifie si le navigateur n'est pas déjà
  71. identifié.
  72. </para>
  73. </listitem>
  74. <listitem>
  75. <para>L'utilisateur entre son mot de passe.</para>
  76. </listitem>
  77. <listitem>
  78. <para>
  79. Le serveur OpenID effectue une vérification pour savoir si l'utilisateur a
  80. le droit d'accéder au service protégé par OpenID.
  81. </para>
  82. </listitem>
  83. <listitem>
  84. <para>
  85. L'utilisateur final accepte alors ou non de partager ses informations
  86. d'identité pour le service protégé par OpenID.
  87. </para>
  88. </listitem>
  89. <listitem>
  90. <para>
  91. Le serveur OpenID redirige le navigateur vers le service protégé par
  92. OpenID, avec un message "authentification approuvée" ou "échouée".
  93. </para>
  94. </listitem>
  95. <listitem>
  96. <para>
  97. Le service protégé par OpenID vérifie l'information du serveur OpenID en
  98. utilisant le "secret" obtenu étape 3 ou en envoyant des informations
  99. supplémentaires.
  100. </para>
  101. </listitem>
  102. </orderedlist>
  103. </sect2>
  104. <sect2 id="zend.openid.introduction.structure">
  105. <title>Zend_OpenId Structure</title>
  106. <para>
  107. <classname>Zend_OpenId</classname> contient deux sous-classes.
  108. <classname>Zend_OpenId_Consumer</classname> est un client, il sera utilisé sur les sites
  109. nécessitant l'identification OpenID. <classname>Zend_OpenId_Provider</classname>, elle,
  110. permet de créer son propre serveur OpenID. Ces deux classes sont totalement
  111. indépendantes l'une de l'autre.
  112. </para>
  113. <para>
  114. Les seuls points communs entre ces deux classes sont l'extension Simple
  115. Registration Extension, implémentée par la classe
  116. <classname>Zend_OpenId_Extension_Sreg</classname>, ainsi que les fonctions utilitaires
  117. présentes dans la classe <classname>Zend_OpenId</classname>.
  118. </para>
  119. <note>
  120. <para>
  121. <classname>Zend_OpenId</classname> utilise <ulink
  122. url="http://www.php.net/manual/fr/ref.gmp.php">l'extension GMP</ulink>, lorsqu'elle
  123. est disponible. Activez cette extension si possible, ceci améliorera les
  124. performances avec <classname>Zend_OpenId</classname>.
  125. </para>
  126. </note>
  127. </sect2>
  128. <sect2 id="zend.openid.introduction.standards">
  129. <title>Standards OpenID supportés</title>
  130. <para>
  131. Le composant <classname>Zend_OpenId</classname> est conforme aux standards
  132. suivants :
  133. </para>
  134. <itemizedlist>
  135. <listitem>
  136. <para>OpenID Authentication protocol version 1.1</para>
  137. </listitem>
  138. <listitem>
  139. <para>OpenID Authentication protocol version 2.0 draft 11</para>
  140. </listitem>
  141. <listitem>
  142. <para>OpenID Simple Registration Extension version 1.0</para>
  143. </listitem>
  144. <listitem>
  145. <para>OpenID Simple Registration Extension version 1.1 draft 1</para>
  146. </listitem>
  147. </itemizedlist>
  148. </sect2>
  149. </sect1>