Serveur HTTP Apache Version 2.4

| Description: | Authentification HTTP de base | 
|---|---|
| Statut: | Base | 
| Identificateur de Module: | auth_basic_module | 
| Fichier Source: | mod_auth_basic.c | 
| Compatibilité: | Disponible depuis la version 2.1 d'Apache | 
Ce module permet d'utiliser l'authentification basique HTTP pour
    restreindre l'accès en recherchant les utilisateurs dans les
    fournisseurs d'authentification spécifiés. Il est en général
    combiné avec au moins un module d'authentification comme
    mod_authn_file et un module d'autorisation comme
    mod_authz_user. L'authentification HTTP à
    base de condensé (digest), quant à elle, est fournie par le module
    mod_auth_digest. 
| Description: | Définit si les processus d'autorisation et d'authentification peuvent être confiés à des modules de plus bas niveau | 
|---|---|
| Syntaxe: | AuthBasicAuthoritative On|Off | 
| Défaut: | AuthBasicAuthoritative On | 
| Contexte: | répertoire, .htaccess | 
| Surcharges autorisées: | AuthConfig | 
| Statut: | Base | 
| Module: | mod_auth_basic | 
Normalement, chaque module d'autorisation énuméré dans la
    directive AuthBasicProvider va tenter de
    vérifier l'utilisateur, et si ce dernier n'est trouvé dans aucun des
    fournisseurs, l'accès sera refusé. Définir explicitement la
    directive AuthBasicAuthoritative à
    Off permet de confier l'autorisation et
    l'authentification à d'autres modules non basés sur les fournisseurs
    si aucun identifiant utilisateur ou aucune
    règle ne correspondent à l'identifiant utilisateur
    spécifié. Ceci ne peut s'avérer nécessaire que lorsque
    mod_auth_basic est combiné avec des modules tiers
    qui n'ont pas été configurés à l'aide de la directive AuthBasicProvider. Lorsqu'on
    utilise de tels modules, l'ordre dans lequel s'effectue le
    traitement est défini dans le code source des modules et n'est pas
    configurable.
| Description: | Authentification de base simulée à l'aide des nom d'utilisateur et mot de passe fournis | 
|---|---|
| Syntaxe: | AuthBasicFake off|username [password] | 
| Défaut: | none | 
| Contexte: | répertoire, .htaccess | 
| Surcharges autorisées: | AuthConfig | 
| Statut: | Base | 
| Module: | mod_auth_basic | 
| Compatibilité: | Disponible à partir de la version 2.4.5 du serveur HTTP Apache | 
Les nom d'utilisateur et mot de passe spécifiés sont rassemblés dans un en-tête d'autorisation qui est transmis au serveur ou au service sous-jacent au serveur. Ces nom d'utilisateur et mot de passe sont interprétés par l'interpréteur d'expression, ce qui permet de les définir en fonction de paramètres de la requête.
Si aucun mot de passe n'est spécifié, la valeur par défaut "password" sera utilisée. Pour désactiver l'authentification de base simulée pour un espace d'URL, définissez AuthBasicFake à "off".
Dans l'exemple suivant, un nom d'utilisateur et un mot de passe prédéfinis sont transmis à un serveur d'arrière-plan :
<Location "/demo">
    AuthBasicFake demo demopass
</Location>
Dans l'exemple suivant, l'adresse email extraite d'un certificat
    client est transmise au serveur, étendant par là-même la
    fonctionnalité de l'option FakeBasicAuth de la directive SSLOptions. Comme avec l'option
    FakeBasicAuth, le mot de passe se voit attribué le contenu fixe de
    la chaîne "password".
<Location "/secure">
    AuthBasicFake "%{SSL_CLIENT_S_DN_Email}"
</Location>
Pour compléter l'exemple précédent, il est possible de générer la valeur du mot de passe en procédant à un hashage de l'adresse email à partir d'un mot d'une passphrase initial fixée, puis de transmettre le résultat obtenu au serveur d'arrière-plan. Ceci peut s'avérer utile pour donner accès à des serveurs anciens qui ne supportent pas les certificats clients.
<Location "/secure">
    AuthBasicFake "%{SSL_CLIENT_S_DN_Email}" "%{sha1:passphrase-%{SSL_CLIENT_S_DN_Email}}"
</Location>
<Location "/public">
    AuthBasicFake off
</Location>
| Description: | Définit le(les) fournisseur(s) d'authentification pour cette zone du site web | 
|---|---|
| Syntaxe: | AuthBasicProvider nom fournisseur
[nom fournisseur] ... | 
| Défaut: | AuthBasicProvider file | 
| Contexte: | répertoire, .htaccess | 
| Surcharges autorisées: | AuthConfig | 
| Statut: | Base | 
| Module: | mod_auth_basic | 
La directive AuthBasicProvider permet de
    définir le fournisseur utilisé pour authentifier les utilisateurs
    pour la zone du site web concernée. Le fournisseur par défaut
    file est implémenté par le module
    mod_authn_file. Assurez-vous que le module
    implémentant le fournisseur choisi soit bien présent dans le
    serveur.
<Location "/secure">
    AuthType basic
    AuthName "private area"
    AuthBasicProvider  dbm
    AuthDBMType        SDBM
    AuthDBMUserFile    "/www/etc/dbmpasswd"
    Require            valid-user
</Location>
Les fournisseurs sont sollicités dans l'ordre jusqu'à ce que l'un d'entre eux trouve une correspondance pour le nom d'utilisateur de la requête ; alors, ce dernier fournisseur sera le seul à vérifier le mot de passe. Un échec dans la vérification du mot de passe n'entraîne pas le passage du contrôle au fournisseur suivant.
Les différents fournisseurs disponibles sont implémentés par les
    modules mod_authn_dbm,
    mod_authn_file, mod_authn_dbd,
    mod_authnz_ldap et mod_authn_socache.
| Description: | Vérifie les mots de passe auprès des fournisseurs d'authentification à la manière de l'authentification de type Digest. | 
|---|---|
| Syntaxe: | AuthBasicUseDigestAlgorithm MD5|Off | 
| Défaut: | AuthBasicUseDigestAlgorithm Off | 
| Contexte: | répertoire, .htaccess | 
| Surcharges autorisées: | AuthConfig | 
| Statut: | Base | 
| Module: | mod_auth_basic | 
| Compatibilité: | Disponible à partir de la version 2.4.7 du serveur HTTP Apache | 
Normalement, lorsqu'on utilise l'authentification basique, les
    fournisseurs spécifiés via la directive AuthBasicProvider tentent de
    contrôler l'identité d'un utilisateur en recherchant dans leurs
    bases de données l'existence d'un couple utilisateur/mot de passe
    correspondant. Les mots de passe enregistrés sont en général
    chiffrés, mais ce n'est pas systématique ; chaque fournisseur peut
    choisir son propre mode de stockage des mots de passe.
Lorsqu'on utilise l'authentification de type Digest, les
    fournisseurs spécifiés par la directive AuthDigestProvider effectuent
    une recherche similaire dans leurs bases de
    données pour trouver un couple utilisateur/mot de passe
    correspondant. Cependant, à la différence de l'authentification
    basique, les données associées à chaque utilisateur et comportant le
    nom d'utilisateur, le domaine de protection (realm) et le mot de
    passe doivent être contenues dans une chaîne chiffrée (Voir le
    document RFC 2617,
    Section 3.2.2.2 pour plus de détails à propos du type de
    chiffrement utilisé pour cette chaîne).
A cause de la différence entre les méthodes de stockage des données des authentifications de type basique et digest, le passage d'une méthode d'authentification de type digest à une méthode d'authentification de type basique requiert l'attribution de nouveaux mots de passe à chaque utilisateur, car leur mots de passe existant ne peut pas être extrait à partir du schéma de stockage utilisé par les fournisseurs d'authentification de type digest.
Si la directive AuthBasicUseDigestAlgorithm est
    définie à la valeur MD5, le mot de passe d'un
    utilisateur dans le cas de l'authentification basique sera vérifié
    en utilisant le même format de chiffrement que dans le cas de
    l'authentification de type digest. Tout d'abord, une chaîne
    comportant le nom d'utilisateur, le domaine de protection (realm) et
    le mot de passe est générée sous forme de condensé (hash) en
    utilisant l'algorithme MD5 ; puis le nom d'utilisateur et cette
    chaîne chiffrée sont transmis aux fournisseurs spécifiés via la
    directive AuthBasicProvider comme si la
    directive AuthType
    était définie à Digest et si l'authentification de type
    Digest était utilisée.
    
Grâce à cette directive, un site peut basculer d'une authentification de type digest à basique sans devoir changer les mots de passe des utilisateurs.
AuthBasicUseDigestAlgorithm
      est définie à MD5. L'utilisation d'un autre
      fournisseur provoquera un message d'erreur et le client se verra
      refuser l'accès.