Преглед изворни кода

[DOCUMENTATION] French:
- sync with English

git-svn-id: http://framework.zend.com/svn/framework/standard/trunk@16374 44c647ce-9c0f-0410-b52a-842ac1e357ba

mikaelkael пре 16 година
родитељ
комит
ce2f231a58

+ 135 - 120
documentation/manual/fr/module_specs/Zend_Auth.xml

@@ -1,12 +1,12 @@
 <?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 16373 -->
 <!-- Reviewed: no -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.introduction">
 <sect1 id="zend.auth.introduction">
     <title>Introduction</title>
     <title>Introduction</title>
 
 
     <para>
     <para>
-        <classname>Zend_Auth</classname> fournit une API pour l'authentification et inclut
-        des adaptateurs concrets d'authentification pour les cas les plus courants.
+        <classname>Zend_Auth</classname> fournit une <acronym>API</acronym> pour l'authentification
+        et inclut des adaptateurs concrets d'authentification pour les cas les plus courants.
     </para>
     </para>
 
 
     <para>
     <para>
@@ -15,8 +15,8 @@
         <emphasis>le processus d'autorisation</emphasis>. L'authentification est définie de
         <emphasis>le processus d'autorisation</emphasis>. L'authentification est définie de
         manière lâche (souple) afin de déterminer si une entité donnée est bien celle qu'elle
         manière lâche (souple) afin de déterminer si une entité donnée est bien celle qu'elle
         prétend être (c.-à-d. identification), sur la base d'identifiants fournis. L'autorisation,
         prétend être (c.-à-d. identification), sur la base d'identifiants fournis. L'autorisation,
-        l'action de décider si une entité donnée peut accéder à d'autres entités et/ou exécuter des
-        opérations sur celles-ci ne fait pas partie des prérogatives de
+        l'action de décider si une entité donnée peut accéder à d'autres entités et&#160;/&#160;ou
+        exécuter des opérations sur celles-ci ne fait pas partie des prérogatives de
         <classname>Zend_Auth</classname>. Pour plus d'informations sur les autorisations et le
         <classname>Zend_Auth</classname>. Pour plus d'informations sur les autorisations et le
         contrôle d'accès via Zend Framework, voyez
         contrôle d'accès via Zend Framework, voyez
         <link linkend="zend.acl"><classname>Zend_Acl</classname></link>.
         <link linkend="zend.acl"><classname>Zend_Acl</classname></link>.
@@ -26,10 +26,10 @@
         <para>
         <para>
             La classe <classname>Zend_Auth</classname> inclut un singleton - uniquement une
             La classe <classname>Zend_Auth</classname> inclut un singleton - uniquement une
             instance de la classe est disponible - à travers la méthode statique
             instance de la classe est disponible - à travers la méthode statique
-            <code>getInstance()</code>. Celle ci utilise un opérateur <code>new</code> et le
-            mot-clé <code>clone</code> ne fonctionnera pas avec la classe
-            <classname>Zend_Auth</classname>, utilisez <code>getInstance()</code> à la
-            place.
+            <methodname>getInstance()</methodname>. Celle ci utilise un opérateur
+            <emphasis>new</emphasis> et le mot-clé <emphasis>clone</emphasis> ne fonctionnera pas
+            avec la classe <classname>Zend_Auth</classname>, utilisez plutôt
+            <methodname>getInstance()</methodname>.
         </para>
         </para>
     </note>
     </note>
 
 
@@ -38,31 +38,33 @@
 
 
         <para>
         <para>
             Un adaptateur <classname>Zend_Auth</classname> est utilisé pour authentifier via
             Un adaptateur <classname>Zend_Auth</classname> est utilisé pour authentifier via
-            un service particulier d'authentification, comme LDAP, RDBMS ou un stockage basé sur
-            des fichiers. Les différents adaptateurs peuvent posséder des options et des
-            comportements très divers. Cependant, quelques méthodes de base leur sont communes. Par
-            exemple, accepter des éléments d'authentification (incluant une identité prétendue),
-            authentifier et retourner un résultat sont des éléments communs aux adaptateurs
-            <classname>Zend_Auth</classname>.
+            un service particulier d'authentification, comme <acronym>LDAP</acronym>,
+            <acronym>RDBMS</acronym> ou un stockage basé sur des fichiers. Les différents
+            adaptateurs peuvent posséder des options et des comportements très divers. Cependant,
+            quelques méthodes de base leur sont communes. Par exemple, accepter des éléments
+            d'authentification (incluant une identité prétendue), authentifier et retourner un
+            résultat sont des éléments communs aux adaptateurs <classname>Zend_Auth</classname>.
         </para>
         </para>
 
 
         <para>
         <para>
             Chaque classe d'adaptateur <classname>Zend_Auth</classname> implémente
             Chaque classe d'adaptateur <classname>Zend_Auth</classname> implémente
             <classname>Zend_Auth_Adapter_Interface</classname>. Cette interface définit une
             <classname>Zend_Auth_Adapter_Interface</classname>. Cette interface définit une
-            méthode, <code>authenticate</code>, celle-ci est implémentée par une classe adaptateur
-            à fin de réaliser l'authentification. Chaque classe adaptateur doit être préparée avant
-            tout appel de <code>authenticate()</code>. Cela implique que chaque adaptateur
-            fournisse la possibilité de définir des éléments d'authentification (par exemple
-            identifiant et mot de passe) et de définir des valeurs pour les options spécifiques de
-            l'adaptateur, tels que les paramètres de connexion à une base de données pour un
-            adaptateur qui en fait usage.
+            méthode, <methodname>authenticate()</methodname>, celle-ci est implémentée par une
+            classe adaptateur à fin de réaliser l'authentification. Chaque classe adaptateur doit
+            être préparée avant tout appel de <methodname>authenticate()</methodname>. Cela implique
+            que chaque adaptateur fournisse la possibilité de définir des éléments
+            d'authentification (par exemple identifiant et mot de passe) et de définir des valeurs
+            pour les options spécifiques de l'adaptateur, tels que les paramètres de connexion à une
+            base de données pour un adaptateur qui en fait usage.
         </para>
         </para>
 
 
         <para>
         <para>
             L'exemple suivant est un adaptateur d'authentification qui requiert un
             L'exemple suivant est un adaptateur d'authentification qui requiert un
             identifiant et un mot de passe. D'autres détails, tel que la manière d'interroger le
             identifiant et un mot de passe. D'autres détails, tel que la manière d'interroger le
             service d'authentification, ont été omis par souci de clarté&#160;:
             service d'authentification, ont été omis par souci de clarté&#160;:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 class MonAdaptateurAuth implements Zend_Auth_Adapter_Interface
 class MonAdaptateurAuth implements Zend_Auth_Adapter_Interface
 {
 {
     /**
     /**
@@ -89,11 +91,13 @@ class MonAdaptateurAuth implements Zend_Auth_Adapter_Interface
     }
     }
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-            Comme indiqué dans la documentation "docblock", <code>authenticate()</code> doit
-            retourner une instance de <classname>Zend_Auth_Result</classname> (ou d'une classe
+
+        <para>
+            Comme indiqué dans la documentation "docblock", <methodname>authenticate()</methodname>
+            doit retourner une instance de <classname>Zend_Auth_Result</classname> (ou d'une classe
             dérivée de <classname>Zend_Auth_Result</classname>). Si pour quelque raison que ce
             dérivée de <classname>Zend_Auth_Result</classname>). Si pour quelque raison que ce
             soit, la requête d'authentification ne peut pas être réalisée,
             soit, la requête d'authentification ne peut pas être réalisée,
-            <code>authenticate()</code> retournera une exception dérivée de
+            <methodname>authenticate()</methodname> retournera une exception dérivée de
             <classname>Zend_Auth_Adapter_Exception</classname>.
             <classname>Zend_Auth_Adapter_Exception</classname>.
         </para>
         </para>
     </sect2>
     </sect2>
@@ -103,52 +107,55 @@ class MonAdaptateurAuth implements Zend_Auth_Adapter_Interface
 
 
         <para>
         <para>
             Les adaptateurs <classname>Zend_Auth</classname> retournent une instance de
             Les adaptateurs <classname>Zend_Auth</classname> retournent une instance de
-            <classname>Zend_Auth_Result</classname> via <code>authenticate()</code> de manière à
-            présenter les résultats d'une tentative d'authentification. Les adaptateurs alimentent
-            l'objet <classname>Zend_Auth_Result</classname> lors de sa construction, de manière à
-            ce que les quatre méthodes suivantes fournissent de base un lot d'opérations communes
-            aux résultats des adaptateurs <classname>Zend_Auth</classname>&#160;:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        <code>isValid()</code>&#160;: retourne <code>true</code> si et seulement
-                        si le résultat représente une tentative réussie d'authentification
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>getCode()</code>&#160;: retourne une constante
-                        <classname>Zend_Auth_Result</classname> qui détermine le type de retour
-                        accepté ou refusé (NDT : voir tableau ci dessous). Cela peut être utilisé
-                        pour les développeurs voulant distinguer en amont les différents types de
-                        résultat. Il est possible d'avoir des statistiques détaillées, par exemple.
-                        Une autre utilisation est la personnalisation du message de retour au
-                        client. Attention cependant à ne pas trop donner de détails aux clients
-                        pour des raisons de sécurité. Pour plus de détails, consultez les notes
-                        ci-dessous.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>getIdentity()</code>&#160;: retourne l'identité de la tentative
-                        d'authentification.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>getMessages()</code>&#160;: retourne un tableau de messages relatifs
-                        à une tentative infructueuse d'authentification.
-                    </para>
-                </listitem>
-            </itemizedlist>
+            <classname>Zend_Auth_Result</classname> via <methodname>authenticate()</methodname> de
+            manière à présenter les résultats d'une tentative d'authentification. Les adaptateurs
+            alimentent l'objet <classname>Zend_Auth_Result</classname> lors de sa construction, de
+            manière à ce que les quatre méthodes suivantes fournissent de base un lot d'opérations
+            communes aux résultats des adaptateurs <classname>Zend_Auth</classname>&#160;:
         </para>
         </para>
 
 
+        <itemizedlist>
+            <listitem>
+                <para>
+                    <methodname>isValid()</methodname>&#160;: retourne <constant>TRUE</constant> si
+                    et seulement si le résultat représente une tentative réussie d'authentification.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getCode()</methodname>&#160;: retourne une constante
+                    <classname>Zend_Auth_Result</classname> qui détermine le type de retour
+                    accepté ou refusé (N.D.T. : voir tableau ci dessous). Cela peut être utilisé
+                    pour les développeurs voulant distinguer en amont les différents types de
+                    résultat. Il est possible d'avoir des statistiques détaillées, par exemple.
+                    Une autre utilisation est la personnalisation du message de retour au
+                    client. Attention cependant à ne pas trop donner de détails aux clients
+                    pour des raisons de sécurité. Pour plus de détails, consultez les notes
+                    ci-dessous.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getIdentity()</methodname>&#160;: retourne l'identité de la
+                    tentative d'authentification.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <methodname>getMessages()</methodname>&#160;: retourne un tableau de messages
+                    relatifs à une tentative infructueuse d'authentification.
+                </para>
+            </listitem>
+        </itemizedlist>
+
         <para>
         <para>
             Un développeur peut connecter le résultat de l'authentification avec des
             Un développeur peut connecter le résultat de l'authentification avec des
             opérations spécifiques. Certaines opérations développées peuvent bloquer le compte
             opérations spécifiques. Certaines opérations développées peuvent bloquer le compte
             après plusieurs refus du mot de passe, bannir une adresse IP après plusieurs essais sur
             après plusieurs refus du mot de passe, bannir une adresse IP après plusieurs essais sur
             des comptes inexistants ou fournir un message spécifique à l'utilisateur final. Les
             des comptes inexistants ou fournir un message spécifique à l'utilisateur final. Les
             codes suivants sont disponibles&#160;:
             codes suivants sont disponibles&#160;:
+        </para>
+
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[
 Zend_Auth_Result::SUCCESS
 Zend_Auth_Result::SUCCESS
 Zend_Auth_Result::FAILURE
 Zend_Auth_Result::FAILURE
@@ -157,10 +164,11 @@ Zend_Auth_Result::FAILURE_IDENTITY_AMBIGUOUS
 Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID
 Zend_Auth_Result::FAILURE_CREDENTIAL_INVALID
 Zend_Auth_Result::FAILURE_UNCATEGORIZED
 Zend_Auth_Result::FAILURE_UNCATEGORIZED
 ]]></programlisting>
 ]]></programlisting>
-        </para>
 
 
         <para>
         <para>
             L'exemple suivant illustre comment utiliser le retour&#160;:
             L'exemple suivant illustre comment utiliser le retour&#160;:
+        </para>
+
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[
 // A l'intérieur de la méthode AuthController / loginAction
 // A l'intérieur de la méthode AuthController / loginAction
 $resultat = $this->_auth->authenticate($adapter);
 $resultat = $this->_auth->authenticate($adapter);
@@ -184,7 +192,6 @@ switch ($resultat->getCode()) {
         break;
         break;
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-        </para>
     </sect2>
     </sect2>
 
 
     <sect2 id="zend.auth.introduction.persistence">
     <sect2 id="zend.auth.introduction.persistence">
@@ -198,27 +205,26 @@ switch ($resultat->getCode()) {
         </para>
         </para>
 
 
         <para>
         <para>
-            HTTP est un protocole sans état, cependant, des techniques telles que les cookies
-            ou les sessions ont été développées de manière à faciliter le maintien d'un contexte
-            lors de multiples requêtes dans les applications Web.
+            <acronym>HTTP</acronym> est un protocole sans état, cependant, des techniques telles que
+            les cookies ou les sessions ont été développées de manière à faciliter le maintien d'un
+            contexte lors de multiples requêtes dans les applications Web.
         </para>
         </para>
 
 
         <sect3 id="zend.auth.introduction.persistence.default">
         <sect3 id="zend.auth.introduction.persistence.default">
             <title>Persistance par défaut dans une session PHP</title>
             <title>Persistance par défaut dans une session PHP</title>
 
 
             <para>
             <para>
-                <link linkend="zend.session"><classname>Zend_Session</classname></link>est utilisé
-                par <classname>Zend_Auth</classname> pour fournir un stockage persistant de
-                l'identité, après une authentification réussie, via les sessions PHP. Après une
-                authentification réussie, <classname>Zend_Auth::authenticate()</classname> conserve
-                l'identité résultant de l'authentification dans un stockage persistant. Par défaut,
-                <classname>Zend_Auth</classname> utilise une classe de stockage basée sur
-                <link linkend="zend.session">Zend_Session</link>. La classe de stockage peut être
-                changée en fournissant un objet de stockage différent à
-                <classname>Zend_Auth::setStorage()</classname>. Une classe personnalisée peut
-                fournir une implémentation de l'objet
+                Par défaut, <classname>Zend_Auth</classname> fournit un stockage persistant de
+                l'identité, après une authentification réussie, via les sessions
+                <acronym>PHP</acronym>. Après une authentification réussie,
+                <methodname>Zend_Auth::authenticate()</methodname> conserve
+                l'identité résultant de l'authentification dans un stockage persistant. A moins
+                d'une configuration particulière, <classname>Zend_Auth</classname> utilise une
+                classe de stockage nommée <classname>Zend_Auth_Storage_Session</classname>, qui
+                utilise <link linkend="zend.session"><classname>Zend_Session</classname></link>.
+                Une classe personnalisée peut être utilisée pour fournir un objet implémentant
                 <classname>Zend_Auth_Storage_Interface</classname> à
                 <classname>Zend_Auth_Storage_Interface</classname> à
-                <classname>Zend_Auth::setStorage()</classname>.
+                <methodname>Zend_Auth::setStorage()</methodname>.
             </para>
             </para>
 
 
             <note>
             <note>
@@ -235,14 +241,16 @@ switch ($resultat->getCode()) {
 
 
                 <para>
                 <para>
                     <classname>Zend_Auth_Storage_Session</classname> utilise un espace de
                     <classname>Zend_Auth_Storage_Session</classname> utilise un espace de
-                    nommage de <code>"Zend_Auth"</code>. Cet espace peut être écrit en passant les
-                    valeurs au constructeur de <classname>Zend_Auth_Storage_Session</classname>, et
-                    ces valeurs sont passées en interne au constructeur de
-                    <classname>Zend_Session_Namespace</classname>. Cela doit être fait avant
-                    l'authentification, et avant que
-                    <classname>Zend_Auth::authenticate()</classname> ait accompli le stockage
+                    nommage de <classname>Zend_Auth</classname>. Cet espace peut être écrit en
+                    passant les valeurs au constructeur de
+                    <classname>Zend_Auth_Storage_Session</classname>, et ces valeurs sont passées en
+                    interne au constructeur de <classname>Zend_Session_Namespace</classname>. Cela
+                    doit être fait avant l'authentification, et avant que
+                    <methodname>Zend_Auth::authenticate()</methodname> ait accompli le stockage
                     automatique de l'identité.
                     automatique de l'identité.
-                    <programlisting language="php"><![CDATA[
+                </para>
+
+                <programlisting language="php"><![CDATA[
 // Sauver une référence du singleton, instance de Zend_Auth
 // Sauver une référence du singleton, instance de Zend_Auth
 $auth = Zend_Auth::getInstance();
 $auth = Zend_Auth::getInstance();
 
 
@@ -258,7 +266,6 @@ $auth->setStorage(new Zend_Auth_Storage_Session('unEspaceDeNommage'));
 // et stockage du résultat en cas de succès
 // et stockage du résultat en cas de succès
 $resultat = $auth->authenticate($authAdaptateur);
 $resultat = $auth->authenticate($authAdaptateur);
 ]]></programlisting>
 ]]></programlisting>
-                </para>
             </example>
             </example>
         </sect3>
         </sect3>
 
 
@@ -271,7 +278,7 @@ $resultat = $auth->authenticate($authAdaptateur);
                 <classname>Zend_Auth_Storage_Session</classname>. Dans ces cas, les développeurs
                 <classname>Zend_Auth_Storage_Session</classname>. Dans ces cas, les développeurs
                 implémentent simplement <classname>Zend_Auth_Storage_Interface</classname> et
                 implémentent simplement <classname>Zend_Auth_Storage_Interface</classname> et
                 fournissent t une instance de la classe à
                 fournissent t une instance de la classe à
-                <classname>Zend_Auth::setStorage()</classname>.
+                <methodname>Zend_Auth::setStorage()</methodname>.
             </para>
             </para>
 
 
             <example id="zend.auth.introduction.persistence.custom.example">
             <example id="zend.auth.introduction.persistence.custom.example">
@@ -281,7 +288,9 @@ $resultat = $auth->authenticate($authAdaptateur);
                     Pour utiliser une classe de stockage d'identité persistante autre que
                     Pour utiliser une classe de stockage d'identité persistante autre que
                     <classname>Zend_Auth_Storage_Session</classname>, le développeur commence par
                     <classname>Zend_Auth_Storage_Session</classname>, le développeur commence par
                     implémenter <classname>Zend_Auth_Storage_Interface</classname>&#160;:
                     implémenter <classname>Zend_Auth_Storage_Interface</classname>&#160;:
-                    <programlisting language="php"><![CDATA[
+                </para>
+
+                <programlisting language="php"><![CDATA[
 class MonStockage implements Zend_Auth_Storage_Interface
 class MonStockage implements Zend_Auth_Storage_Interface
 {
 {
     /**
     /**
@@ -345,12 +354,13 @@ class MonStockage implements Zend_Auth_Storage_Interface
 
 
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-                </para>
 
 
                 <para>
                 <para>
                     Ensuite la classe personnalisée est invoquée, avant la requête
                     Ensuite la classe personnalisée est invoquée, avant la requête
-                    d'authentification, avec <classname>Zend_Auth::setStorage()</classname>&#160;:
-                    <programlisting language="php"><![CDATA[
+                    d'authentification, avec <methodname>Zend_Auth::setStorage()</methodname>&#160;:
+                </para>
+
+                <programlisting language="php"><![CDATA[
 // Définit la classe personnalisée à utiliser
 // Définit la classe personnalisée à utiliser
 Zend_Auth::getInstance()->setStorage(new MonStockage());
 Zend_Auth::getInstance()->setStorage(new MonStockage());
 
 
@@ -363,7 +373,6 @@ Zend_Auth::getInstance()->setStorage(new MonStockage());
 // persistance du résultat en cas de succès.
 // persistance du résultat en cas de succès.
 $result = Zend_Auth::getInstance()->authenticate($authAdaptateur);
 $result = Zend_Auth::getInstance()->authenticate($authAdaptateur);
 ]]></programlisting>
 ]]></programlisting>
-                </para>
             </example>
             </example>
         </sect3>
         </sect3>
     </sect2>
     </sect2>
@@ -374,26 +383,29 @@ $result = Zend_Auth::getInstance()->authenticate($authAdaptateur);
         <para>
         <para>
             Deux manières d'utiliser les adaptateurs <classname>Zend_Auth</classname> sont
             Deux manières d'utiliser les adaptateurs <classname>Zend_Auth</classname> sont
             proposées&#160;:
             proposées&#160;:
-            <orderedlist>
-                <listitem>
-                    <para>
-                        indirectement, via <classname>Zend_Auth::authenticate()</classname>&#160;;
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        directement, via la méthode <code>authenticate()</code> de
-                        l'adaptateur.
-                    </para>
-                </listitem>
-            </orderedlist>
         </para>
         </para>
 
 
+        <orderedlist>
+            <listitem>
+                <para>
+                    indirectement, via <methodname>Zend_Auth::authenticate()</methodname>&#160;;
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    directement, via la méthode <methodname>authenticate()</methodname> de
+                    l'adaptateur.
+                </para>
+            </listitem>
+        </orderedlist>
+
         <para>
         <para>
             L'exemple suivant illustre la manière d'utiliser un adaptateur
             L'exemple suivant illustre la manière d'utiliser un adaptateur
             <classname>Zend_Auth</classname> de manière indirecte via l'utilisation de la classe
             <classname>Zend_Auth</classname> de manière indirecte via l'utilisation de la classe
             <classname>Zend_Auth</classname>&#160;:
             <classname>Zend_Auth</classname>&#160;:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 // Obtention d'une référence de l'instance du Singleton de Zend_Auth
 // Obtention d'une référence de l'instance du Singleton de Zend_Auth
 $auth = Zend_Auth::getInstance();
 $auth = Zend_Auth::getInstance();
 
 
@@ -415,38 +427,42 @@ if (!$resultat->isValid()) {
     // $resultat->getIdentity() === $identifiant
     // $resultat->getIdentity() === $identifiant
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-        </para>
 
 
         <para>
         <para>
             Une fois la tentative d'authentification réalisée, tel que montré ci-dessus, il
             Une fois la tentative d'authentification réalisée, tel que montré ci-dessus, il
             est très simple de vérifier si une identité correctement authentifiée existe&#160;:
             est très simple de vérifier si une identité correctement authentifiée existe&#160;:
-            <programlisting language="php"><![CDATA[
+        </para>
+
+        <programlisting language="php"><![CDATA[
 $auth = Zend_Auth::getInstance();
 $auth = Zend_Auth::getInstance();
 if ($auth->hasIdentity()) {
 if ($auth->hasIdentity()) {
     // l'identité existe ; on la récupère
     // l'identité existe ; on la récupère
     $identite = $auth->getIdentity();
     $identite = $auth->getIdentity();
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-        </para>
 
 
         <para>
         <para>
             Pour retirer une identité du stockage persistant, utilisez simplement la méthode
             Pour retirer une identité du stockage persistant, utilisez simplement la méthode
-            <code>clearIdentity()</code>. A utiliser typiquement pour implémenter une opération de
-            déconnexion d'une application&#160;:
-            <programlisting language="php"><![CDATA[
+            <methodname>clearIdentity()</methodname>. A utiliser typiquement pour implémenter une
+            opération de déconnexion d'une application&#160;:
+        </para>
+
+        <programlisting language="php"><![CDATA[
 Zend_Auth::getInstance()->clearIdentity();
 Zend_Auth::getInstance()->clearIdentity();
 ]]></programlisting>
 ]]></programlisting>
-        </para>
 
 
         <para>
         <para>
             Quand l'utilisation automatique du stockage persistant n'est pas appropriée, le
             Quand l'utilisation automatique du stockage persistant n'est pas appropriée, le
             développeur peut simplement contourner l'utilisation de la classe
             développeur peut simplement contourner l'utilisation de la classe
             <classname>Zend_Auth</classname> en utilisant directement une classe adaptateur.
             <classname>Zend_Auth</classname> en utilisant directement une classe adaptateur.
             L'usage direct d'une classe adaptateur implique de configurer et préparer l'objet
             L'usage direct d'une classe adaptateur implique de configurer et préparer l'objet
-            adaptateur et d'appeler ensuite sa méthode <code>authenticate()</code>. Les détails
-            spécifiques à un adaptateur sont décrits dans la documentation de chacun d'entre-eux.
-            L'exemple suivant utilise directement <classname>MonAdaptateurAuth</classname>&#160;:
-            <programlisting language="php"><![CDATA[
+            adaptateur et d'appeler ensuite sa méthode <methodname>authenticate()</methodname>. Les
+            détails spécifiques à un adaptateur sont décrits dans la documentation de chacun
+            d'entre-eux. L'exemple suivant utilise directement
+            <emphasis>MonAdaptateurAuth</emphasis>&#160;:
+        </para>
+
+        <programlisting language="php"><![CDATA[
 // Définition de l'adaptateur d'authentification
 // Définition de l'adaptateur d'authentification
 $authAdaptateur = new MonAdaptateurAuth($identifiant, $motdepasse);
 $authAdaptateur = new MonAdaptateurAuth($identifiant, $motdepasse);
 
 
@@ -463,6 +479,5 @@ if (!$resultat->isValid()) {
     // $resultat->getIdentity() === $identifiant
     // $resultat->getIdentity() === $identifiant
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-        </para>
     </sect2>
     </sect2>
 </sect1>
 </sect1>

+ 103 - 55
documentation/manual/fr/module_specs/Zend_Auth_Adapter_DbTable.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 16050 -->
 <!-- Reviewed: no -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.dbtable">
 <sect1 id="zend.auth.adapter.dbtable">
     <title>Authentification avec une table de base de données</title>
     <title>Authentification avec une table de base de données</title>
@@ -19,46 +19,48 @@
 
 
         <para>
         <para>
             Les options de configuration disponibles incluent&#160;:
             Les options de configuration disponibles incluent&#160;:
-            <itemizedlist>
-                <listitem>
-                    <para><code>tableName</code>&#160;: il s'agit du nom de la table dans la base de
-                    données qui contient les crédits d'authentification, et envers laquelle la
-                    requête d'authentification sera réalisée.
-                </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>identityColumn</code>&#160;: il s'agit du nom de la colonne dans la
-                        table utilisée pour représenter l'identité. La colonne d'identité doit
-                        contenir une valeur unique, comme un "<code>username</code>" ou une adresse
-                        émail.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>credentialColumn</code>&#160;: il s'agit du nom de la colonne dans la
-                        table utilisée pour représenter le crédit. Dans le cas d'une simple
-                        authentification par identité / mot de passe, la valeur de crédit
-                        correspond au mot de passe. Voir aussi l'option
-                        <code>credentialTreatment</code>.
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>credentialTreatment</code>&#160;: dans la plupart des cas, les mots de
-                        passe et autres données sensibles sont cryptés, hachés, encodés, masqués, ou
-                        sinon traités à travers une fonction ou un algorithme. En spécifiant un
-                        traitement paramétrable de chaîne avec cette méthode, comme
-                        <code>'MD5(?)'</code> ou <code>'PASSWORD(?)'</code>, un développeur peut
-                        appliquer un code SQL arbitraire sur les données de crédit fournies. Comme
-                        ces fonctions sont spécifiques à chaque gestionnaire de base de données,
-                        vérifiez le manuel de la base de données pour vérifier la disponibilité de
-                        ces fonctions dans votre système.
-                    </para>
-                </listitem>
-            </itemizedlist>
         </para>
         </para>
 
 
+        <itemizedlist>
+            <listitem>
+                <para><emphasis>tableName</emphasis>&#160;: il s'agit du nom de la table dans la
+                base de données qui contient les crédits d'authentification, et envers laquelle la
+                requête d'authentification sera réalisée.
+            </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>identityColumn</emphasis>&#160;: il s'agit du nom de la colonne dans
+                    la table utilisée pour représenter l'identité. La colonne d'identité doit
+                    contenir une valeur unique, comme un "username" ou une adresse
+                    émail.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>credentialColumn</emphasis>&#160;: il s'agit du nom de la colonne
+                    dans la table utilisée pour représenter le crédit. Dans le cas d'une simple
+                    authentification par identité / mot de passe, la valeur de crédit
+                    correspond au mot de passe. Voir aussi l'option
+                    <emphasis>credentialTreatment</emphasis>.
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    <emphasis>credentialTreatment</emphasis>&#160;: dans la plupart des cas, les
+                    mots de passe et autres données sensibles sont cryptés, hachés, encodés,
+                    masqués, ou sinon traités à travers une fonction ou un algorithme. En
+                    spécifiant un traitement paramétrable de chaîne avec cette méthode, comme
+                    <methodname>MD5(?)</methodname> ou <methodname>PASSWORD(?)</methodname>, un
+                    développeur peut appliquer un code <acronym>SQL</acronym> arbitraire sur les
+                    données de crédit fournies. Comme ces fonctions sont spécifiques à chaque
+                    gestionnaire de base de données (<acronym>SGBD</acronym>), vérifiez le manuel
+                    de la base de données pour vérifier la disponibilité de ces fonctions dans
+                    votre système.
+                </para>
+            </listitem>
+        </itemizedlist>
+
         <example id="zend.auth.adapter.dbtable.introduction.example.basic_usage">
         <example id="zend.auth.adapter.dbtable.introduction.example.basic_usage">
             <title>Utilisation basique</title>
             <title>Utilisation basique</title>
 
 
@@ -75,7 +77,9 @@
                 un schéma avec une table unique, et insère une ligne sur laquelle nous pouvons
                 un schéma avec une table unique, et insère une ligne sur laquelle nous pouvons
                 réaliser une requête d'authentification plus tard. Cet exemple requiert que
                 réaliser une requête d'authentification plus tard. Cet exemple requiert que
                 l'extension PDO SQLite soit disponible&#160;:
                 l'extension PDO SQLite soit disponible&#160;:
-                <programlisting language="php"><![CDATA[
+            </para>
+
+            <programlisting language="php"><![CDATA[
 // Crée une connexion de base de données SQLite en mémoire
 // Crée une connexion de base de données SQLite en mémoire
 $dbAdapter = new Zend_Db_Adapter_Pdo_Sqlite(array('dbname' =>
 $dbAdapter = new Zend_Db_Adapter_Pdo_Sqlite(array('dbname' =>
                                                   ':memory:'));
                                                   ':memory:'));
@@ -98,7 +102,6 @@ $sqlInsert = "INSERT INTO users (username, password, real_name) "
 // Insertion des données
 // Insertion des données
 $dbAdapter->query($sqlInsert);
 $dbAdapter->query($sqlInsert);
 ]]></programlisting>
 ]]></programlisting>
-            </para>
 
 
             <para>
             <para>
                 Avec une connexion de base de données et des données disponibles dans la
                 Avec une connexion de base de données et des données disponibles dans la
@@ -106,7 +109,9 @@ $dbAdapter->query($sqlInsert);
                 créée. Les valeurs d'options de configuration peuvent être fournies au
                 créée. Les valeurs d'options de configuration peuvent être fournies au
                 constructeur ou en tant que paramètres aux méthodes de réglage après
                 constructeur ou en tant que paramètres aux méthodes de réglage après
                 l'instanciation&#160;:
                 l'instanciation&#160;:
-                <programlisting language="php"><![CDATA[
+            </para>
+
+            <programlisting language="php"><![CDATA[
 // Configure une instance avec des paramètres de constructeur ...
 // Configure une instance avec des paramètres de constructeur ...
 $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter,
 $authAdapter = new Zend_Auth_Adapter_DbTable($dbAdapter,
                                              'users',
                                              'users',
@@ -119,14 +124,15 @@ $authAdapter->setTableName('users')
             ->setIdentityColumn('username')
             ->setIdentityColumn('username')
             ->setCredentialColumn('password');
             ->setCredentialColumn('password');
 ]]></programlisting>
 ]]></programlisting>
-            </para>
 
 
             <para>
             <para>
                 A cet instant, l'instance de l'adaptateur d'authentification est prête à
                 A cet instant, l'instance de l'adaptateur d'authentification est prête à
                 recevoir des requêtes d'authentification. Dans le but de réaliser une requête
                 recevoir des requêtes d'authentification. Dans le but de réaliser une requête
                 d'authentification, les valeurs des crédits requêtés sont fournies à l'adaptateur
                 d'authentification, les valeurs des crédits requêtés sont fournies à l'adaptateur
-                avant d'appeler la méthode <code>authenticate()</code>&#160;:
-                <programlisting language="php"><![CDATA[
+                avant d'appeler la méthode <methodname>authenticate()</methodname>&#160;:
+            </para>
+
+            <programlisting language="php"><![CDATA[
 // Règle les valeurs d'entrées des crédits
 // Règle les valeurs d'entrées des crédits
 // (en général, à partir d'un formulaire d'enregistrement)
 // (en général, à partir d'un formulaire d'enregistrement)
 $authAdapter->setIdentity('my_username')
 $authAdapter->setIdentity('my_username')
@@ -135,14 +141,15 @@ $authAdapter->setIdentity('my_username')
 // Réalise la requête d'authentification, et sauvegarde le résultat
 // Réalise la requête d'authentification, et sauvegarde le résultat
 $result = $authAdapter->authenticate();
 $result = $authAdapter->authenticate();
 ]]></programlisting>
 ]]></programlisting>
-            </para>
 
 
             <para>
             <para>
-                En plus de la disponibilité de la méthode <code>getIdentity()</code> pour
-                récupérer l'objet du résultat d'authentification,
+                En plus de la disponibilité de la méthode <methodname>getIdentity()</methodname>
+                pour récupérer l'objet du résultat d'authentification,
                 <classname>Zend_Auth_Adapter_DbTable</classname> supporte aussi la récupération de
                 <classname>Zend_Auth_Adapter_DbTable</classname> supporte aussi la récupération de
                 la ligne de la table qui a réussi l'authentification&#160;:
                 la ligne de la table qui a réussi l'authentification&#160;:
-                <programlisting language="php"><![CDATA[
+            </para>
+
+            <programlisting language="php"><![CDATA[
 // Affiche l'identité
 // Affiche l'identité
 echo $result->getIdentity() . "\n\n";
 echo $result->getIdentity() . "\n\n";
 
 
@@ -161,6 +168,8 @@ Array
 )
 )
 */
 */
 ]]></programlisting>
 ]]></programlisting>
+
+            <para>
                 Puisque la ligne de la table contient la valeur de crédit, il est important de
                 Puisque la ligne de la table contient la valeur de crédit, il est important de
                 garantir ces valeurs contre l'accès fortuit.
                 garantir ces valeurs contre l'accès fortuit.
             </para>
             </para>
@@ -176,9 +185,12 @@ Array
             d'utilisation, où les développeurs veulent stocker dans le mécanisme de stockage
             d'utilisation, où les développeurs veulent stocker dans le mécanisme de stockage
             persistant du <classname>Zend_Auth</classname> un objet d'identité contenant d'autres
             persistant du <classname>Zend_Auth</classname> un objet d'identité contenant d'autres
             informations utiles, est résolu en utilisant la méthode
             informations utiles, est résolu en utilisant la méthode
-            <code>getResultRowObject()</code> retournant un objet <code>stdClass</code>. Le petit
-            bout de code suivant illustre cette utilisation&#160;:
-            <programlisting language="php"><![CDATA[
+            <methodname>getResultRowObject()</methodname> retournant un objet
+            <emphasis>stdClass</emphasis>. Le petit bout de code suivant illustre cette
+            utilisation&#160;:
+        </para>
+
+        <programlisting language="php"><![CDATA[
 // authentifie avec Zend_Auth_Adapter_DbTable
 // authentifie avec Zend_Auth_Adapter_DbTable
 $result = $this->_auth->authenticate($adapter);
 $result = $this->_auth->authenticate($adapter);
 
 
@@ -202,7 +214,6 @@ if ($result->isValid()) {
 
 
 }
 }
 ]]></programlisting>
 ]]></programlisting>
-        </para>
     </sect2>
     </sect2>
 
 
     <sect2 id="zend.auth.adapter.dbtable.advanced.advanced_usage">
     <sect2 id="zend.auth.adapter.dbtable.advanced.advanced_usage">
@@ -296,9 +307,46 @@ $adapter = new Zend_Auth_Adapter_DbTable(
             <para>
             <para>
                 Vous pouvez encore améliorer la sécurité en utilisant une chaîne de "salt"
                 Vous pouvez encore améliorer la sécurité en utilisant une chaîne de "salt"
                 statique codée en dur dans votre application. Dans le cas ou la base de données est
                 statique codée en dur dans votre application. Dans le cas ou la base de données est
-                compromise (par exemple par une attaque de type injection SQL) mais que votre
-                serveur Web est intact, les données sont inutilisables par l'attaquant.
+                compromise (par exemple par une attaque de type injection <acronym>SQL</acronym>)
+                mais que votre serveur Web est intact, les données sont inutilisables par
+                l'attaquant.
             </para>
             </para>
         </note>
         </note>
+
+        <para>
+            Une autre alternative est d'utiliser la méthode <methodname>getDbSelect()</methodname>
+            de la classe <classname>Zend_Auth_Adapter_DbTable</classname> après la construction de
+            l'adaptateur. Cette méthode retournera une instance d'objet
+            <classname>Zend_Db_Select</classname> utilisée pour réaliser la routine
+            <methodname>authenticate()</methodname>. Il est important de noter que cette méthode
+            retournera toujours le même objet, que la méthode
+            <methodname>authenticate()</methodname> a été appelée ou non. Cet objet
+            <emphasis>ne comportera aucune</emphasis> information d'identité ou de crédit puisque
+            celles-ci sont placées dans l'objet select au moment de
+            <methodname>authenticate()</methodname>.
+        </para>
+
+        <para>
+            Un exemple de situation nécessitant l'utilisation de la méthode
+            <methodname>getDbSelect()</methodname> serait de vérifier le statut d'un utilisateur,
+            en d'autres termes pour voir si le compte d'un utilisateur est activé.
+        </para>
+        <programlisting language="php"><![CDATA[
+// En continuant avec l'exemple ci-dessus
+$adapter = new Zend_Auth_Adapter_DbTable(
+    $db,
+    'users',
+    'username',
+    'password',
+    'MD5(?)'
+);
+
+// Récupérer l'objet select (par référence)
+$select = $adapter->getDbSelect();
+$select->where('active = "TRUE"');
+
+// Authentification, ceci s'assure que users.active = TRUE
+$adapter->authenticate();
+]]></programlisting>
     </sect2>
     </sect2>
 </sect1>
 </sect1>

+ 60 - 49
documentation/manual/fr/module_specs/Zend_Auth_Adapter_Digest.xml

@@ -1,5 +1,5 @@
 <?xml version="1.0" encoding="utf-8"?>
 <?xml version="1.0" encoding="utf-8"?>
-<!-- EN-Revision: 15617 -->
+<!-- EN-Revision: 15860 -->
 <!-- Reviewed: no -->
 <!-- Reviewed: no -->
 <sect1 id="zend.auth.adapter.digest">
 <sect1 id="zend.auth.adapter.digest">
     <title>Authentification "Digest"</title>
     <title>Authentification "Digest"</title>
@@ -9,8 +9,8 @@
 
 
         <para>
         <para>
             <ulink url="http://fr.wikipedia.org/wiki/HTTP_Authentification#M.C3.A9thode_Digest">
             <ulink url="http://fr.wikipedia.org/wiki/HTTP_Authentification#M.C3.A9thode_Digest">
-            L'authentification "Digest"</ulink> est une méthode d'authentification HTTP qui
-            améliore
+            L'authentification "Digest"</ulink> est une méthode d'authentification
+            <acronym>HTTP</acronym> qui améliore
             <ulink url="http://fr.wikipedia.org/wiki/HTTP_Authentification#M.C3.A9thode_Basic">
             <ulink url="http://fr.wikipedia.org/wiki/HTTP_Authentification#M.C3.A9thode_Basic">
             l'authentification basique</ulink> en fournissant un moyen d'authentifier sans avoir à
             l'authentification basique</ulink> en fournissant un moyen d'authentifier sans avoir à
             transmettre le mot de passe en clair sur le réseau.
             transmettre le mot de passe en clair sur le réseau.
@@ -19,25 +19,33 @@
         <para>
         <para>
             Cet adaptateur permet l'authentification en utilisant un fichier texte contenant
             Cet adaptateur permet l'authentification en utilisant un fichier texte contenant
             des lignes comportant les éléments de base d'une authentification Digest&#160;:
             des lignes comportant les éléments de base d'une authentification Digest&#160;:
-            <itemizedlist>
-                <listitem>
-                    <para>identifiant, tel que "<code>jean.utilisateur</code>"</para>
-                </listitem>
-                <listitem>
-                    <para>domaine, tel que "<code>Zone administrative</code>"</para>
-                </listitem>
-                <listitem>
-                    <para>
-                        hachage MD5 d'un identifiant, domaine et mot de passe, séparés par des
-                        caractères deux-points.
-                    </para>
-                </listitem>
-            </itemizedlist>
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    identifiant, tel que
+                    "<emphasis><filename>utilisateur.jean</filename></emphasis>"
+                </para>
+            </listitem>
+            <listitem>
+                <para>domaine, tel que "<emphasis>Zone administrative</emphasis>"</para>
+            </listitem>
+            <listitem>
+                <para>
+                    hachage <acronym>MD5</acronym>5 d'un identifiant, domaine et mot de passe,
+                    séparés par des caractères deux-points.
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
             Les éléments ci-dessus sont séparés par des caractères deux-points, comme dans
             Les éléments ci-dessus sont séparés par des caractères deux-points, comme dans
-            l'exemple suivant (dans lequel le mot de passe est "<code>unMotdepasse</code>")&#160;:
+            l'exemple suivant (dans lequel le mot de passe est
+            "<emphasis>unMotdepasse</emphasis>")&#160;:
         </para>
         </para>
 
 
-        <programlisting><![CDATA[
+        <programlisting language="txt"><![CDATA[
 unUtilisateur:Un domaine:3b17d7f3a9374666e892cbce58aa724f
 unUtilisateur:Un domaine:3b17d7f3a9374666e892cbce58aa724f
 ]]></programlisting>
 ]]></programlisting>
     </sect2>
     </sect2>
@@ -48,33 +56,35 @@ unUtilisateur:Un domaine:3b17d7f3a9374666e892cbce58aa724f
         <para>
         <para>
             L'adaptateur d'authentification Digest, <classname>Zend_Auth_Adapter_Digest</classname>
             L'adaptateur d'authentification Digest, <classname>Zend_Auth_Adapter_Digest</classname>
             requiert plusieurs paramètres d'entrée&#160;:
             requiert plusieurs paramètres d'entrée&#160;:
-            <itemizedlist>
-                <listitem>
-                    <para>
-                        <code>filename</code>&#160;: fichier utilisé pour réaliser
-                        l'authentification
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>realm</code>&#160;: domaine d'authentification Digest
-                        ("<code>realm</code>" en anglais)
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>username</code>&#160;: identifiant d'authentification Digest
-                        ("<code>username</code>" en anglais)
-                    </para>
-                </listitem>
-                <listitem>
-                    <para>
-                        <code>password</code>&#160;: mot de passe pour l'identifiant dans le
-                        domaine
-                    </para>
-                </listitem>
-            </itemizedlist>
-            Ces paramètres doivent être définis avant l'appel de <code>authenticate()</code>.
+        </para>
+
+        <itemizedlist>
+            <listitem>
+                <para>
+                    filename&#160;: fichier utilisé pour réaliser
+                    l'authentification
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    realm&#160;: domaine d'authentification Digest ("realm" en anglais)
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    username&#160;: identifiant d'authentification Digest
+                </para>
+            </listitem>
+            <listitem>
+                <para>
+                    password&#160;: mot de passe pour l'identifiant dans le domaine
+                </para>
+            </listitem>
+        </itemizedlist>
+
+        <para>
+            Ces paramètres doivent être définis avant l'appel de
+            <methodname>authenticate()</methodname>.
         </para>
         </para>
     </sect2>
     </sect2>
 
 
@@ -84,9 +94,10 @@ unUtilisateur:Un domaine:3b17d7f3a9374666e892cbce58aa724f
         <para>
         <para>
             L'adaptateur d'authentification Digest retourne un objet
             L'adaptateur d'authentification Digest retourne un objet
             <classname>Zend_Auth_Result</classname>, lequel a été alimenté avec l'identité sous la
             <classname>Zend_Auth_Result</classname>, lequel a été alimenté avec l'identité sous la
-            forme d'un tableau ayant pour clés <code>realm</code> (domaine) et
-            <code>username</code> (identifiant). Les valeurs respectives associées à ces clés
-            correspondent aux valeurs définies avant l'appel à <code>authenticate()</code>.
+            forme d'un tableau ayant pour clés <emphasis>realm</emphasis> (domaine) et
+            <emphasis>username</emphasis> (identifiant). Les valeurs respectives associées à ces
+            clés correspondent aux valeurs définies avant l'appel à
+            <methodname>authenticate()</methodname>.
         </para>
         </para>
 
 
         <programlisting language="php"><![CDATA[
         <programlisting language="php"><![CDATA[