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