<?xml version="1.0" encoding="ISO-8859-1"?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
<!--
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
              This file is generated from xml source: DO NOT EDIT
        XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
      -->
<title>htpasswd - Gestion des fichiers d'utilisateurs pour
l'authentification de base - Serveur Apache HTTP Version 2.4</title>
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
<script src="../style/scripts/prettify.min.js" type="text/javascript">
</script>

<link href="../images/favicon.ico" rel="shortcut icon" /></head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
<p class="apache">Serveur Apache HTTP Version 2.4</p>
<img alt="" src="../images/feather.png" /></div>
<div class="up"><a href="./"><img title="&lt;-" alt="&lt;-" src="../images/left.gif" /></a></div>
<div id="path">
<a href="http://www.apache.org/">Apache</a> &gt; <a href="http://httpd.apache.org/">Serveur HTTP</a> &gt; <a href="http://httpd.apache.org/docs/">Documentation</a> &gt; <a href="../">Version 2.4</a> &gt; <a href="./">Programmes</a></div><div id="page-content"><div id="preamble"><h1>htpasswd - Gestion des fichiers d'utilisateurs pour
l'authentification de base</h1>
<div class="toplang">
<p><span>Langues Disponibles: </span><a href="../en/programs/htpasswd.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/htpasswd.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/htpasswd.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/htpasswd.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div>

    <p><code>htpasswd</code> permet de créer et de maintenir les
    fichiers textes où sont stockés les noms d'utilisateurs et mots de
    passe pour l'authentification de base des utilisateurs HTTP. Si
    <code>htpasswd</code> rencontre un problème d'accès à un fichier,
    que ce soit pour écrire dans le fichier de sortie, ou pour lire le
    fichier d'entrée dans le but de le mettre à jour, il renvoie un code
    d'erreur et n'effectue aucune modification.</p>

    <p>Il est possible de limiter l'accès aux ressources du serveur HTTP
    Apache aux seuls utilisateurs présents dans les fichiers créés par
    <code>htpasswd</code>. Ce programme ne sait gérer les noms
    d'utilisateurs et mots de passe que s'ils sont stockés dans des
    fichiers textes. Il peut cependant chiffrer et afficher les mots de
    passe à des fins d'utilisation dans d'autres types de bases de
    données. Pour utiliser une base de données DBM, voir le programme
    <code class="program"><a href="../programs/dbmmanage.html">dbmmanage</a></code> ou <code class="program"><a href="../programs/htdbm.html">htdbm</a></code>.</p>

    <p><code>htpasswd</code> chiffre les mots de passe en utilisant soit
    bcrypt,
    une version de MD5 modifiée pour Apache, soit SHA1, soit la routine
    <code>crypt()</code> du système. Les fichiers gérés par
    <code>htpasswd</code> peuvent contenir deux types de mots de passe ;
    certaines entrées peuvent contenir des mots de passe chiffrés en
    MD5 ou bcrypt, alors que d'autres entrées du même fichier contiendront des
    mots de passe chiffrés avec <code>crypt()</code>.</p>

    <p>Cette page de manuel ne décrit que les arguments de la ligne de
    commande. Pour plus de détails à propos des directives nécessaires à
    la configuration de l'authentification des utilisateurs dans
    <code class="program"><a href="../programs/httpd.html">httpd</a></code>, voir le manuel Apache qui est fourni avec
    la distribution ou peut être consulté à <a href="http://httpd.apache.org">http://httpd.apache.org/</a>.</p>
</div>
<div id="quickview"><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#synopsis">Syntaxe</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#options">Options</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#exit">Valeur renvoyée</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#examples">Exemples</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#security">Considérations à propos de sécurité</a></li>
<li><img alt="" src="../images/down.gif" /> <a href="#restrictions">Restrictions</a></li>
</ul><h3>Voir aussi</h3><ul class="seealso"><li><code class="program"><a href="../programs/httpd.html">httpd</a></code></li><li><code class="program"><a href="../programs/htdbm.html">htdbm</a></code></li><li>Les scripts fournis avec la distibution d'Apache et situés dans
support/SHA1.</li><li><a href="#comments_section">Commentaires</a></li></ul></div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="synopsis" id="synopsis">Syntaxe</a></h2>
    <p><code><strong>htpasswd</strong>
    [ -<strong>c</strong> ]
    [ -<strong>i</strong> ]
    [ -<strong>m</strong> |
      -<strong>B</strong> |
      -<strong>d</strong> |
      -<strong>s</strong> |
      -<strong>p</strong> ]
    [ -<strong>C</strong> <var>cost</var> ]
    [ -<strong>D</strong> ]
    [ -<strong>v</strong> ]  <var>fichier-mots-de-passe</var> <var>nom-utilisateur</var></code></p>

    <p><code><strong>htpasswd</strong> -<strong>b</strong>
    [ -<strong>c</strong> ]
    [ -<strong>m</strong> |
      -<strong>B</strong> |
      -<strong>d</strong> |
      -<strong>s</strong> |
      -<strong>p</strong> ]
    [ -<strong>C</strong> <var>cost</var> ]
    [ -<strong>D</strong> ]
    [ -<strong>v</strong> ]  <var>fichier-mots-de-passe</var> <var>nom-utilisateur</var>
    <var>mot-de-passe</var></code></p>

    <p><code><strong>htpasswd</strong> -<strong>n</strong>
    [ -<strong>i</strong> ]
    [ -<strong>m</strong> |
      -<strong>B</strong> |
      -<strong>d</strong> |
      -<strong>s</strong> |
      -<strong>p</strong> ]
    [ -<strong>C</strong> <var>cost</var> ] <var>nom-utilisateur</var></code></p>

    <p><code><strong>htpasswd</strong> -<strong>nb</strong>
    [ -<strong>m</strong> |
      -<strong>B</strong> |
      -<strong>d</strong> |
      -<strong>s</strong> |
      -<strong>p</strong> ]
    [ -<strong>C</strong> <var>cost</var> ] <var>nom-utilisateur</var>
    <var>mot-de-passe</var></code></p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="options" id="options">Options</a></h2>
    <dl>
    <dt><code>-b</code></dt>
    <dd>Utilise le mode batch ; c'est à dire, extrait le mot de passe de
    la ligne de commande au lieu de le demander à l'opérateur. Cette
    option doit être utilisée avec la plus grande prudence, car
    <strong>le mot de passe est visible en clair</strong> dans la ligne
    de commande. Pour utiliser un script, voir l'option
    <code>-i</code>.
    Disponible à partir de la version 2.4.4 du serveur HTTP Apache.</dd>

    <dt><code>-i</code></dt>
    <dd>Lit le mot de passe depuis stdin sans vérification (à utiliser
    dans les scripts).</dd>

    <dt><code>-c</code></dt>
    <dd>Crée le <var>fichier-mots-de-passe</var>. Si
    <var>fichier-mots-de-passe</var> existe déjà, il est réécrit et
    tronqué. Cette option ne peut pas être combinée avec l'option
    <code>-n</code>.</dd>

    <dt><code>-n</code></dt>
    <dd>Affiche le résultat du traitement sur la sortie standard au lieu
    de mettre à jour le fichier. Ceci peut s'avérer utile pour générer
    des enregistrements de mots de passe qu'Apache pourra utiliser à des
    fins d'inclusion dans des fichiers de données au format autre que
    texte. Cette option modifie la syntaxe de la ligne de commande, car
    l'argument <var>fichier-mots-de-passe</var> (en général le premier)
    est omis. Elle ne peut pas être combinée avec l'option
    <code>-c</code> option.</dd>

    <dt><code>-m</code></dt>
    <dd>Utilise le chiffrement MD5 pour les mots de passe. C'est le
    comportement par défaut (depuis la version 2.2.18).</dd>

    <dt><code>-B</code></dt>
    <dd>Utilise bcrypt pour chiffrer les mots de passe. c'est un
    algorythme de chiffrement actuellement considéré comme sûr.</dd>

    <dt><code>-C</code></dt>
    <dd>Ce drapeau n'est autorisé qu'en conjonction avec le drapeau
    <code>-B</code> (chiffrement bcrypt). Il permet de définir la durée
    de traitement pour l'algorytme bcrypt (plus elle est longue,
    meilleure sera la sécurité, mais inférieure la rapidité). La valeur
    par défaut est 5 et les valeurs autorisées vont de 4 à 31.</dd>


    <dt><code>-d</code></dt>
    <dd>Utilise le chiffrement <code>crypt()</code> pour les mots de
    passe. Cette option n'est pas supportée par le
    serveur <code class="program"><a href="../programs/httpd.html">httpd</a></code> sous Windows ou Netware. Cet
    algorithme limite la longueur des mots de passe à 8 caractères ; il
    est considéré comme <strong>non sur</strong> du point de vue des
    standards actuels. C'était l'algorithme par défaut jusqu'à la
    version 2.2.17.</dd>

    <dt><code>-s</code></dt>
    <dd>Utilise le chiffrement SHA pour les mots de passe. Facilite la
    migration vers/depuis les serveurs Netscape qui utilisent le format
    LDAP Directory Interchange (ldif). Cet algorithme
    est considéré comme <strong>non sur</strong> du point de vue des
    standards actuels.</dd>

    <dt><code>-p</code></dt>
    <dd>Enregistre les mots de passe en clair. Bien que
    <code>htpasswd</code> supporte la création des mots de passe en
    clair sur toutes les plates-formes, le démon
    <code class="program"><a href="../programs/httpd.html">httpd</a></code> n'accepte les mots de passe en clair que
    sous Windows et Netware.</dd>

    <dt><code>-D</code></dt>
    <dd>Supprime un utilisateur, sous réserve qu'il existe dans le
    fichier spécifié par htpasswd.</dd>

    <dt><code>-v</code></dt>
    <dd>Vérifie si le mot de passe fourni correspond au mot de passe de
    l'utilisateur enregistré dans le fichier de mots de passe spécifié.
    Disponible à partir de la version 2.4.5 du serveur HTTP Apache.</dd>

    <dt><code><var>fichier-mots-de-passe</var></code></dt>
    <dd>Le nom du fichier contenant les noms d'utilisateurs et mots de
    passe. Avec l'option <code>-c</code>, le fichier est créé s'il
    n'existe pas, ou réécrit et tronqué s'il existe déjà.</dd>

    <dt><code><var>nom-utilisateur</var></code></dt>
    <dd>Le nom d'utilisateur à créer ou mettre à jour dans le
    <var>fichier-mots-de-passe</var>. Si <var>nom-utilisateur</var>
    n'existe pas, une nouvelle entrée est ajoutée. Dans le cas
    contraire, le mot de passe est modifié.</dd>

    <dt><code><var>mot-de-passe</var></code></dt>
    <dd>Le mot de passe en clair et destiné à être chiffré puis stocké
    dans le fichier. Cet argument ne s'utilise qu'avec l'option
    <code>-b</code>.</dd>
    </dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="exit" id="exit">Valeur renvoyée</a></h2>
    <p><code>htpasswd</code> renvoie 0 ("true") si le nom d'utilisateur
    et le mot de passe ont été enregistrés ou mis à jour avec succès
    dans le <var>fichier-mots-de-passe</var>. <code>htpasswd</code>
    renvoie <code>1</code> s'il a rencontré un problème d'accès aux
    fichiers, <code>2</code> si la ligne de commande comportait une
    erreur de syntaxe, <code>3</code> si le mot de passe entré
    interactivement ne correspondait pas au nom d'utilisateur,
    <code>4</code> si l'opération a été interrompue, <code>5</code> si
    une valeur était trop longue (nom-utilisateur, nom-fichier,
    mot-de-passe, ou l'enregistrement résultant), <code>6</code> si le
    nom d'utilisateur contenait des caractères illégaux (voir la section
    <a href="#restrictions">Restrictions</a>), et <code>7</code> si le
    fichier spécifié n'était pas un fichier de mots de passe
    valide.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="examples" id="examples">Exemples</a></h2>
    <div class="example"><p><code>
      htpasswd /usr/local/etc/apache/.utilisateurs-htpasswd jsmith
    </code></p></div>

    <p>Ajoute ou modifie le mot de passe de l'utilisateur
    <code>jsmith</code>. Le mot de passe est demandé à l'opérateur. Le
    mot de passe sera chiffré en utilisant l'algorithme MD5
    modifié pour Apache. Si le fichier spécifié
    n'existe pas, <code>htpasswd</code> renverra un code d'erreur.</p>

    <div class="example"><p><code>
      htpasswd -c /home/doe/public_html/.htpasswd jane
    </code></p></div>

    <p>Crée un nouveau fichier de mots de passe et y enregistre une
    entrée pour l'utilisateur <code>jane</code>. Le mot de passe est
    demandé à l'opérateur. Si le fichier existe et ne peut être ni lu ni
    écrit, il n'est pas modifié et <code>htpasswd</code> affichera un
    message et renverra un code d'erreur.</p>

    <div class="example"><p><code>
      htpasswd -db /usr/web/.htpasswd-tous jones Pwd4Steve
    </code></p></div>

    <p>Chiffre le mot de passe spécifié dans la ligne de commande
    (<code>Pwd4Steve</code>) en utilisant l'algorithme
    <code>crypt()</code>, et le stocke dans le fichier spécifié.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="security" id="security">Considérations à propos de sécurité</a></h2>
    <p>Les fichiers de mots de passe Web comme ceux que gère
    <code>htpasswd</code> ne doivent <em>pas</em> être situés dans
    l'espace d'URI du serveur Web -- en d'autres termes, il ne doit pas
    être possible d'y accéder à partir d'un navigateur.</p>

    <p>En tant qu'exécutable setuid, ce programme n'est pas sûr, et il
    ne faut par conséquent <em>pas</em> lui attribuer de permissions
    setuid.</p>

    <p>L'utilisation de l'option <code>-b</code> est déconseillée, car
    avec elle, les mots de passe apparaissent en clair dans la ligne de
    commande.</p>

    <p>Notez qu'avec l'algorithme <code>crypt()</code>, seuls les huit
    premiers caractères du mot de passe spécifié sont pris en compte. Si
    le mot de passe spécifié est plus long, les caractères
    supplémentaires sont ignorés.</p>

    <p>Le format de chiffrement SHA n'utilise pas d'amorçage aléatoire
    (salting) : à un mot de passe donné correspond une seule
    représentation chiffrée. Les formats <code>crypt()</code> et MD5
    permutent la représentation en la préfixant par une chaîne d'amorce
    aléatoire, afin de rendre les attaques de mots de passe à base de
    dictionnaires plus difficiles.</p>

    <p>Les algorithmes de chiffrement SHA et <code>crypt()</code> 
    sont considérés comme <strong>non surs</strong> du point de vue des
    standards actuels.</p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="restrictions" id="restrictions">Restrictions</a></h2>
    <p>Sur les plates-formes Windows, la taille des mots de passe
    chiffrés avec <code>htpasswd</code> est limitée à <code>255</code>
    caractères. Les mots de passe dont la taille est supérieure seront
    tronqués.</p>

    <p>L'algorithme MD5 utilisé par <code>htpasswd</code> est spécifique
    à Apache ; les mots de passe chiffrés en utilisant cet algorithme
    seront inutilisables sur d'autres serveurs Web.</p>

    <p>La taille des noms d'utilisateurs est limitée à <code>255</code>
    octets et ceux-ci ne doivent pas contenir de caractère
    <code>:</code>.</p>
</div></div>
<div class="bottomlang">
<p><span>Langues Disponibles: </span><a href="../en/programs/htpasswd.html" hreflang="en" rel="alternate" title="English">&nbsp;en&nbsp;</a> |
<a href="../fr/programs/htpasswd.html" title="Français">&nbsp;fr&nbsp;</a> |
<a href="../ko/programs/htpasswd.html" hreflang="ko" rel="alternate" title="Korean">&nbsp;ko&nbsp;</a> |
<a href="../tr/programs/htpasswd.html" hreflang="tr" rel="alternate" title="Türkçe">&nbsp;tr&nbsp;</a></p>
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />This is not a Q&amp;A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
<script type="text/javascript"><!--//--><![CDATA[//><!--
var comments_shortname = 'httpd';
var comments_identifier = 'http://httpd.apache.org/docs/2.4/programs/htpasswd.html';
(function(w, d) {
    if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
        d.write('<div id="comments_thread"><\/div>');
        var s = d.createElement('script');
        s.type = 'text/javascript';
        s.async = true;
        s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
        (d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
    }
    else { 
        d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
    }
})(window, document);
//--><!]]></script></div><div id="footer">
<p class="apache">Copyright 2016 The Apache Software Foundation.<br />Autorisé sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
if (typeof(prettyPrint) !== 'undefined') {
    prettyPrint();
}
//--><!]]></script>
</body></html>