<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Module Apache mod_auth_form

Langues Disponibles:  en  |  fr 

Description:Authentification ´┐Ż l'aide d'un formulaire
Statut:Base
Identificateur´┐Żde´┐ŻModule:auth_form_module
Fichier´┐ŻSource:mod_auth_form.c
Compatibilit´┐Ż:Disponible ´┐Ż partir d'Apache 2.3

Sommaire

Avertissement

L'authentification ´┐Ż base de formulaire d´┐Żpend des modules mod_session qui utilisent les cookies HTTP, et en tant que tels s'exposent ´┐Ż des attaques de type Cross Site Scripting, ou risquent de divulguer des informations ´┐Ż caract´┐Żre priv´┐Ż aux clients. Assurez-vous que ces risques ont bien ´┐Żt´┐Ż pris en compte avant d'activer les sessions sur votre serveur.

Ce module permet de restreindre les acc´┐Żs, au moyen d'un formulaire de connexion HTML, en recherchant les utilisateurs aupr´┐Żs des fournisseurs sp´┐Żcifi´┐Żs. Les formulaires HTML requi´┐Żrent davantage de configuration que les m´┐Żthodes d'authentification alternatives, mais ils peuvent s'av´┐Żrer beaucoup plus conviviaux pour les utilisateurs.

L'authentification HTTP de base est fournie par le module mod_auth_basic, et l'authentification HTTP ´┐Ż base de condens´┐Ż par le module mod_auth_digest. Le module mod_auth_form doit ´┐Żtre utilis´┐Ż avec au moins un module d'authentification du style mod_authn_file et un module d'autorisation comme mod_authz_user.

Lorsque l'utilisateur a ´┐Żt´┐Ż authentifi´┐Ż avec succ´┐Żs, ses informations de connexion sont stock´┐Żs dans une session fournie par le module mod_session.

Directives

Sujets

Voir aussi

top

Configuration de base

Pour prot´┐Żger une URL particuli´┐Żre avec le module mod_auth_form, vous devez d´┐Żterminer l'endroit o´┐Ż vous allez stocker votre session, ainsi que la m´┐Żthode d'authentification. Dans cet exemple simple, les informations de connexion sont stock´┐Żes dans une session ´┐Ż l'aide du module mod_session_cookie, et l'authentification utilise un fichier en s'appuyant sur le module mod_authn_file. Si l'authentification ´┐Żchoue, l'utilisateur sera redirig´┐Ż vers la page du formulaire de connexion.

Exemple simple

AuthFormProvider file
AuthUserFile conf/passwd
AuthType form
AuthName realm
AuthFormLoginRequiredLocation http://example.com/login.html
Session On
SessionCookieName session path=/
SessionCryptoPassphrase secret

L'authentification mod_auth_form est activ´┐Że en affectant la valeur form ´┐Ż la directive AuthType. Les directives AuthFormProvider et AuthUserFile sp´┐Żcifient que les noms d'utilisateurs et mots de passe seront v´┐Żrifi´┐Żs en utilisant le fichier choisi.

Les directives Session, SessionCookieName et SessionCryptoPassphrase cr´┐Żent une session chiffr´┐Że stock´┐Że dans un cookie HTTP au niveau du navigateur. Pour plus d'informations ´┐Ż propos des diff´┐Żrentes options de configuration des sessions, reportez-vous ´┐Ż la documentation du module mod_session.

Dans l'exemple simple ci-dessus, une URL a ´┐Żt´┐Ż prot´┐Żg´┐Że par mod_auth_form, mais on doit maintenant fournir ´┐Ż l'utilisateur un moyen de saisir un nom et un mot de passe. ´┐Ż cet effet, on peut soit ´┐Żcrire une page de connexion ind´┐Żpendante d´┐Żdi´┐Że, soit inclure le formulaire de connexion dans la page courante.

top

Page de connexion d´┐Żdi´┐Że

Le formulaire de connexion peut ´┐Żtre contenu dans une page ind´┐Żpendante, ou ´┐Żtre inclus dans la page courante.

Lorsque la connexion s'effectue ´┐Ż partir d'une page ind´┐Żpendante et si la tentative d'authentification ´┐Żchoue, l'utilisateur doit ´┐Żtre redirig´┐Ż vers un formulaire de connexion, cr´┐Ż´┐Ż ´┐Ż cet effet sur le site web, en utilisant la directive AuthFormLoginRequiredLocation. En g´┐Żn´┐Żral, la page de connexion contiendra un formulaire HTML demandant ´┐Ż l'utilisateur de fournir un nom et un mot de passe.

Exemple de formulaire de connexion

<form method="POST" action="/dologin.html">
  Username: <input type="text" name="httpd_username" value="" />
  Password: <input type="password" name="httpd_password" value="" />
  <input type="submit" name="login" value="Login" />
</form>

La partie o´┐Ż s'effectue la connexion proprement dite est trait´┐Że par le gestionnaire form-login-handler. L'action de ce formulaire doit pointer vers ce gestionnaire, ce que l'on configure dans Apache httpd comme suit :

Exemple de configuration du gestionnaire de formulaire de connexion

<Location /dologin.html>
    SetHandler form-login-handler
    AuthFormLoginRequiredLocation http://example.com/login.html
    AuthFormLoginSuccessLocation http://example.com/success.html
    AuthFormProvider file
    AuthUserFile conf/passwd
    AuthType form
    AuthName realm
    Session On
    SessionCookieName session path=/
    SessionCryptoPassphrase secret
</Location>

L'URL sp´┐Żcifi´┐Że par la directive AuthFormLoginRequiredLocation r´┐Żf´┐Żrencera en g´┐Żn´┐Żral une page expliquant ´┐Ż l'utilisateur que sa tentative de connexion a ´┐Żchou´┐Ż, et qu'il doit la renouveler. La directive AuthFormLoginSuccessLocation sp´┐Żcifie l'URL vers laquelle l'utilisateur doit ´┐Żtre redirig´┐Ż s'il s'est authentifi´┐Ż avec succ´┐Żs.

Alternativement, l'URL vers laquelle doit ´┐Żtre redirig´┐Ż l'utilisateur s'il s'est authentifi´┐Ż avec succ´┐Żs peut ´┐Żtre int´┐Żgr´┐Że dans le formulaire de connexion, comme dans l'exemple ci-dessous. Il en d´┐Żcoule que le m´┐Żme gestionnaire form-login-handler pourra ´┐Żtre utilis´┐Ż pour diff´┐Żrentes zones du site web.

Exemple de formulaire de login avec page cible

<form method="POST" action="/dologin.html">
  Username: <input type="text" name="httpd_username" value="" />
  Password: <input type="password" name="httpd_password" value="" />
  <input type="submit" name="login" value="Login" />
  <input type="hidden" name="httpd_location" value="http://example.com/success.html" />
</form>
top

Connexion ´┐Ż la vol´┐Że

Avertissement

Il existe un risque, dans certaines circonstances, que le formulaire de connexion configur´┐Ż pour une connexion ´┐Ż la vol´┐Że soit soumis plusieurs fois, r´┐Żv´┐Żlant de ce fait les param´┐Żtres de connexion ´┐Ż l'application sous-jacente. L'administrateur doit s'assurer que cette derni´┐Żre est correctement s´┐Żcuris´┐Że afin d'´┐Żviter les ´┐Żventuels abus. En cas de doute, utilisez une page de connexion ind´┐Żpendante d´┐Żdi´┐Że.

Comme alternative ´┐Ż la page de connexion d´┐Żdi´┐Że pour un site web, il est possible de configurer mod_auth_form pour authentifier les utilisateurs ´┐Ż la vol´┐Że, sans les rediriger vers une autre page, ce qui permet de conserver l'´┐Żtat de la page courante au cours de la tentative de connexion. Ceci peut s'av´┐Żrer utile dans le cas d'une session limit´┐Że dans le temps, si le d´┐Żlai de la session a expir´┐Ż pendant la requ´┐Żte de l'utilisateur. Ce dernier peut alors se r´┐Żauthentifier ´┐Ż la m´┐Żme place, et poursuivre son activit´┐Ż ´┐Ż partir du point o´┐Ż il en ´┐Żtait rest´┐Ż.

Si un utilisateur non authentifi´┐Ż tente d'acc´┐Żder ´┐Ż une page prot´┐Żg´┐Że par mod_auth_form, et si ce dernier n'est pas configur´┐Ż avec une directive AuthFormLoginRequiredLocation, un code de statut HTTP_UNAUTHORIZED est renvoy´┐Ż vers le navigateur, indiquant ´┐Ż l'utilisateur qu'il n'est pas autoris´┐Ż ´┐Ż acc´┐Żder ´┐Ż cette page.

Pour configurer l'authentification ´┐Ż la vol´┐Że, l'administrateur remplace le message d'erreur renvoy´┐Ż par le code de statut HTTP_UNAUTHORIZED par un message d'erreur personnalis´┐Ż contenant le formulaire de connexion comme suit :

Exemple simple d'authentification ´┐Ż la vol´┐Że

AuthFormProvider file
ErrorDocument 401 /login.shtml
AuthUserFile conf/passwd
AuthType form
AuthName realm
AuthFormLoginRequiredLocation http://example.com/login.html
Session On
SessionCookieName session path=/
SessionCryptoPassphrase secret

La page du message d'erreur doit contenir un formulaire de connexion dont la propri´┐Żt´┐Ż action est vide, comme dans l'exemple ci-dessous. Ceci a pour effet de soumettre le formulaire ´┐Ż l'URL prot´┐Żg´┐Że originale, cette derni´┐Żre n'ayant pas besoin d'´┐Żtre connue de la page en cours.

Exemple de formulaire de connexion ´┐Ż la vol´┐Że

<form method="POST" action="">
  Username: <input type="text" name="httpd_username" value="" />
  Password: <input type="password" name="httpd_password" value="" />
  <input type="submit" name="login" value="Login" />
</form>

Lorsque l'utilisateur final a entr´┐Ż ses informations de connexion, le formulaire effectue une requ´┐Żte HTTP POST pour l'URL originale prot´┐Żg´┐Że par mot de passe. mod_auth_form va alors intercepter cette requ´┐Żte POST, et dans le cas o´┐Ż des champs HTML Utilisateur et Mot de passe corrects sont pr´┐Żsents, l'utilisateur sera connect´┐Ż, et l'URL originale prot´┐Żg´┐Że par mot de passe lui sera retourn´┐Że en tant que requ´┐Żte GET.

top

Connexion ´┐Ż la vol´┐Że avec conservation du contenu

Il existe une limite ´┐Ż la technique de connexion ´┐Ż la vol´┐Że d´┐Żcrite ci-dessus ; si un formulaire HTML POST entra´┐Żne une demande d'authentification ou de r´┐Żauthentification, le contenu du formulaire original envoy´┐Ż par le navigateur sera perdu. Cela peut s'av´┐Żrer plus ou moins g´┐Żnant pour l'utilisateur final selon la fonction du site web.

Comme solution ´┐Ż ce probl´┐Żme, mod_auth_form permet d'int´┐Żgrer la m´┐Żthode et le contenu de la requ´┐Żte originale dans le formulaire de connexion. Si l'authentification r´┐Żussit, Apache httpd pourra refaire une tentative avec la m´┐Żthode et le contenu originaux, tout en conservant l'´┐Żtat de la requ´┐Żte originale.

Pour mettre en oeuvre la conservation du contenu, vous devez ajouter trois champs suppl´┐Żmentaires au formulaire de connexion comme dans l'exemple suivant :

Exemple de formulaire avec conservation du contenu

<form method="POST" action="">
  Username: <input type="text" name="httpd_username" value="" />
  Password: <input type="password" name="httpd_password" value="" />
  <input type="submit" name="login" value="Login" />
  
<input type="hidden" name="httpd_method" value="POST" /> <input type="hidden" name="httpd_mimetype" value="application/x-www-form-urlencoded" /> <input type="hidden" name="httpd_body" value="name1=value1&name2=value2" />
</form>

La mani´┐Żre dont la m´┐Żthode, le type MIME et le contenu de la requ´┐Żte originale seront int´┐Żgr´┐Żs dans le formulaire de connexion vont d´┐Żpendre de la plate-forme et de la technologie utilis´┐Żes au sein du site web.

Une option consiste ´┐Ż utiliser le module mod_include en association avec la directive KeptBodySize, ainsi qu'un script CGI adapt´┐Ż pour int´┐Żgrer les variables dans le formulaire.

Une autre option consiste ´┐Ż pr´┐Żsenter le formulaire de connexion en utilisant un script CGI ou une autre technologie dynamique.

Exemple avec script CGI

        AuthFormProvider file
        ErrorDocument 401 /cgi-bin/login.cgi
        ...
top

D´┐Żconnexion

Pour permettre ´┐Ż un utilisateur de se d´┐Żconnecter d'une session particuli´┐Żre, vous devez configurer une page pour qu'elle soit trait´┐Że par le gestionnaire form-logout-handler. Tout acc´┐Żs ´┐Ż cette URL va entra´┐Żner la suppression de l'Utilisateur et du Mot de passe de la session courante, ce qui aura pour effet de d´┐Żconnecter l'utilisateur.

Vous pouvez sp´┐Żcifier une URL vers laquelle le navigateur sera redirig´┐Ż en cas de d´┐Żconnection r´┐Żussie, en d´┐Żfinissant la directive AuthFormLogoutLocation. Cette URL devra expliquer ´┐Ż l'utilisateur qu'il a ´┐Żt´┐Ż d´┐Żconnect´┐Ż, et lui donner la possibilit´┐Ż de se connecter ´┐Ż nouveau.

Exemple simple de configuration de la d´┐Żconnexion

SetHandler form-logout-handler
AuthName realm
AuthFormLogoutLocation http://example.com/loggedout.html
Session On
SessionCookieName session path=/
SessionCryptoPassphrase secret

Notez que la d´┐Żconnexion d'un utilisateur ne supprime pas la session ; elle supprime seulement l'Utilisateur et le mot de passe de la session. Si la session qui en r´┐Żsulte est vide, elle sera probablement supprim´┐Że, mais ce n'est pas garanti. Si vous voulez ´┐Żtre s´┐Żr que la session sera supprim´┐Że, affectez une petite valeur ´┐Ż la directive SessionMaxAge, par exemple 1 (affecter ´┐Ż cette directive la valeur z´┐Żro signifie une session sans limite d'´┐Żge).

Exemple simple avec dur´┐Że de validit´┐Ż de session limit´┐Że

SetHandler form-logout-handler
AuthFormLogoutLocation http://example.com/loggedout.html
Session On
SessionMaxAge 1
SessionCookieName session path=/
SessionCryptoPassphrase secret
top

Noms d'utilisateurs et mots de passe

Notez que la soumission d'un formulaire implique l'encodage URL (URLEncoding) des donn´┐Żes du formulaire, ici le nom d'utilisateur et le mot de passe. Vous devez donc choisir des noms d'utilisateurs et mots de passe qui ne contiennent pas de caract´┐Żres susceptibles d'´┐Żtre encod´┐Żs URL lors de la soumission du formulaire, sous peine d'obtenir des r´┐Żsultats inattendus.

top

AuthFormAuthoritative Directive

Description:D´┐Żtermine si l'autorisation et l'authentification sont confi´┐Żs ´┐Ż des modules de plus bas niveau
Syntaxe:AuthFormAuthoritative On|Off
D´┐Żfaut:AuthFormAuthoritative On
Contexte:r´┐Żpertoire, .htaccess
AllowOverride:AuthConfig
Statut:Base
Module:mod_auth_form

Normalement, chacun des modules d'autorisation sp´┐Żcifi´┐Żs par la directive AuthFormProvider va tenter de v´┐Żrifier l'identit´┐Ż de l'utilisateur, et si ce dernier n'est trouv´┐Ż dans aucun fournisseur, l'acc´┐Żs sera refus´┐Ż. En d´┐Żfinissant explicitement la directive AuthFormAuthoritative ´┐Ż Off on confie les processus d'authentification et d'autorisation ´┐Ż des modules ne s'appuyant pas sur des fournisseurs, si aucun identifiant utilisateur ou aucune r´┐Żgle ne correspond ´┐Ż l'identifiant utilisateur fourni. Ceci ne peut s'av´┐Żrer n´┐Żcessaire que si l'on combine mod_auth_form avec des modules tiers qui ne se configurent pas avec la directive AuthFormProvider. Lorsqu'on utilise de tels modules, la chronologie du processus est d´┐Żtermin´┐Że dans leur code source, et n'est pas configurable.

top

AuthFormBody Directive

Description:Le nom du champ de formulaire contenant le corps de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie
Syntaxe:AuthFormBody nom du champ
D´┐Żfaut:httpd_body
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormBody permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra le corps de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie.

En ajoutant au formulaire les champs d´┐Żcrits dans AuthFormMethod, AuthFormMimetype et AuthFormBody, un site web sera en mesure de relancer une requ´┐Żte qui a ´┐Żt´┐Ż ´┐Żventuellement interrompue par l'´┐Żcran de connexion, ou par l'expiration d'un d´┐Żlai de session.

top

AuthFormDisableNoStore Directive

Description:D´┐Żsactive l'en-t´┐Żte CacheControl no-store sur la page de connexion
Syntaxe:AuthFormDisableNoStore On|Off
D´┐Żfaut:AuthFormDisableNoStore Off
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

Le drapeau AuthFormDisableNoStore supprime l'envoi d'un en-t´┐Żte Cache-Control no-store lorsqu'une page avec code d'erreur 401 est renvoy´┐Że si l'utilisateur n'est pas encore connect´┐Ż. Avec cet en-t´┐Żte, il est plus difficile pour une application ecmascript de resoumettre un formulaire de connexion, et ainsi r´┐Żv´┐Żler le nom d'utilisateur et le mot de passe ´┐Ż l'application sous-jacente. Vous devez ´┐Żtre conscient des risques encourus si vous le d´┐Żsactivez.

top

AuthFormFakeBasicAuth Directive

Description:Simule un en-t´┐Żte d'authentification de base
Syntaxe:AuthFormFakeBasicAuth On|Off
D´┐Żfaut:AuthFormFakeBasicAuth Off
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

Le drapeau AuthFormFakeBasicAuth permet de d´┐Żterminer si un en-t´┐Żte d'Authentification de base sera ajout´┐Ż aux en-t´┐Żtes de la requ´┐Żte. On peut utiliser cette m´┐Żthode pour pr´┐Żsenter le nom d'utilisateur et le mot de passe ´┐Ż l'application sous-jacente, sans que cette derni´┐Żre ait besoin de conna´┐Żtre la mani´┐Żre dont le processus de connexion a ´┐Żt´┐Ż men´┐Ż ´┐Ż bien.

top

AuthFormLocation Directive

Description:Le nom du champ de formulaire qui contiendra l'URL vers laquelle l'utilisateur sera redirig´┐Ż en cas de connexion r´┐Żussie
Syntaxe:AuthFormLocation nom du champ
D´┐Żfaut:httpd_location
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormLocation permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra l'URL vers laquelle rediriger le navigateur en cas de connexion r´┐Żussie.

top

AuthFormLoginRequiredLocation Directive

Description:L'URL de la page vers laquelle on doit ´┐Żtre redirig´┐Ż si une authentification est requise
Syntaxe:AuthFormLoginRequiredLocation url
D´┐Żfaut:none
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache. L'interpr´┐Żteur d'expressions a ´┐Żt´┐Ż ajout´┐Ż ´┐Ż partir de la version 2.4.4.

La directive AuthFormLoginRequiredLocation permet de sp´┐Żcifier l'URL vers laquelle l'utilisateur devra ´┐Żtre redirig´┐Ż s'il n'est pas autoris´┐Ż ´┐Ż acc´┐Żder ´┐Ż une page. L'argument pass´┐Ż ´┐Ż cette directive est lu au moyen de l'analyseur lexical ap_expr avant d'´┐Żtre envoy´┐Ż au client. Par d´┐Żfaut, si un utilisateur n'est pas autoris´┐Ż ´┐Ż acc´┐Żder ´┐Ż une page, le code de r´┐Żponse HTTP HTTP_UNAUTHORIZED est renvoy´┐Ż avec la page sp´┐Żcifi´┐Że par la directive ErrorDocument. La directive AuthFormLoginRequiredLocation permet de remplacer cette valeur par d´┐Żfaut.

Vous pouvez utiliser cette directive si vous voulez pr´┐Żsenter une page de connexion personnalis´┐Że ´┐Ż vos utilisateurs.

top

AuthFormLoginSuccessLocation Directive

Description:L'URL de la page vers laquelle on doit ´┐Żtre redirig´┐Ż en cas de connexion r´┐Żussie
Syntaxe:AuthFormLoginSuccessLocation url
D´┐Żfaut:none
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache. L'interpr´┐Żteur d'expressions a ´┐Żt´┐Ż ajout´┐Ż ´┐Ż partir de la version 2.4.4.

La directive AuthFormLoginSuccessLocation permet de sp´┐Żcifier l'URL vers laquelle l'utilisateur doit ´┐Żtre redirig´┐Ż en cas de connexion r´┐Żussie. L'argument pass´┐Ż ´┐Ż cette directive est lu au moyen de l'analyseur lexical ap_expr avant d'´┐Żtre envoy´┐Ż au client. L'effet de cette directive peut ´┐Żtre annul´┐Ż si l'on a d´┐Żfini un champ de formulaire contenant une autre URL ´┐Ż l'aide de la directive AuthFormLocation.

Vous pouvez utiliser cette directive si vous poss´┐Żdez une URL de connexion personnalis´┐Że, et si vous n'avez pas int´┐Żgr´┐Ż la page de destination dans le formulaire de connexion.

top

AuthFormLogoutLocation Directive

Description:L'URL vers laquelle un utilisateur devra ´┐Żtre redirig´┐Ż apr´┐Żs s'´┐Żtre d´┐Żconnect´┐Ż
Syntaxe:AuthFormLogoutLocation uri
D´┐Żfaut:none
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache. L'interpr´┐Żteur d'expressions a ´┐Żt´┐Ż ajout´┐Ż ´┐Ż partir de la version 2.4.4.

La directive AuthFormLogoutLocation permet de sp´┐Żcifier l'URL de la page du serveur vers laquelle l'utilisateur devra ´┐Żtre redirig´┐Ż s'il se d´┐Żconnecte. L'argument pass´┐Ż ´┐Ż cette directive est lu au moyen de l'analyseur lexical ap_expr avant d'´┐Żtre envoy´┐Ż au client.

Lorsqu'un acc´┐Żs est tent´┐Ż sur un URI trait´┐Ż par le gestionnaire form-logout-handler, la page sp´┐Żcifi´┐Że par cette directive sera pr´┐Żsent´┐Że ´┐Ż l'utilisateur final. Par exemple :

Exemple

<Location /logout>
    SetHandler form-logout-handler
    AuthFormLogoutLocation http://example.com/loggedout.html
    Session on
    #...
</Location>

Si un utilisateur tente d'acc´┐Żder ´┐Ż l'URI /logout/, il sera d´┐Żconnect´┐Ż, et la page /loggedout.html lui sera pr´┐Żsent´┐Że. Assurez-vous que la page loggedout.html n'est pas prot´┐Żg´┐Że par mot de passe, car dans le cas contraire, elle ne serait pas affich´┐Że.

top

AuthFormMethod Directive

Description:Le nom du champ de formulaire contenant la m´┐Żthode de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie
Syntaxe:AuthFormMethod nom du champ
D´┐Żfaut:httpd_method
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormMethod permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra le type MIME de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie.

En ajoutant au formulaire les champs d´┐Żcrits dans AuthFormMethod, AuthFormMimetype et AuthFormBody, un site web sera en mesure de relancer une requ´┐Żte qui a ´┐Żt´┐Ż ´┐Żventuellement interrompue par l'´┐Żcran de connexion, ou par l'expiration d'un d´┐Żlai de session.

top

AuthFormMimetype Directive

Description:Le nom du champ de formulaire contenant le type MIME du corps de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie
Syntaxe:AuthFormMimetype nom du champ
D´┐Żfaut:httpd_mimetype
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormMimetype permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra le type MIME de la requ´┐Żte ´┐Ż effectuer en cas de connexion r´┐Żussie.

En ajoutant au formulaire les champs d´┐Żcrits dans AuthFormMethod, AuthFormMimetype et AuthFormBody, un site web sera en mesure de relancer une requ´┐Żte qui a ´┐Żt´┐Ż ´┐Żventuellement interrompue par l'´┐Żcran de connexion, ou par l'expiration d'un d´┐Żlai de session.

top

AuthFormPassword Directive

Description:Le nom du champ de formulaire qui contient le mot de passe de connexion
Syntaxe:AuthFormPassword nom du champ
D´┐Żfaut:httpd_password
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormPassword permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra le mot de passe qui sera utilis´┐Ż pour la connexion.

top

AuthFormProvider Directive

Description:D´┐Żfinit le(s) fournisseur(s) d'authentification pour la zone concern´┐Że
Syntaxe:AuthFormProvider nom fournisseur [nom fournisseur] ...
D´┐Żfaut:AuthFormProvider file
Contexte:r´┐Żpertoire, .htaccess
AllowOverride:AuthConfig
Statut:Base
Module:mod_auth_form

La directive AuthFormProvider permet de d´┐Żfinir quel fournisseur sera utilis´┐Ż pour authentifier les utilisateurs pour la zone concern´┐Że. Le fournisseur par d´┐Żfaut file est impl´┐Żment´┐Ż par le module mod_authn_file. Assurez-vous que le fournisseur choisi soit bien pr´┐Żsent dans le serveur.

Exemple

<Location /secure>
    AuthType form
    AuthName "private area"
    AuthFormProvider  dbm
    AuthDBMType        SDBM
    AuthDBMUserFile    /www/etc/dbmpasswd
    Require            valid-user
    #...
</Location>

Les diff´┐Żrents fournisseurs sont impl´┐Żment´┐Żs par les modules mod_authn_dbm, mod_authn_file, mod_authn_dbd et mod_authnz_ldap.

top

AuthFormSitePassphrase Directive

Description:Court-circuite l'authentification pour les sites ´┐Ż fort trafic
Syntaxe:AuthFormSitePassphrase secret
D´┐Żfaut:none
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormSitePassphrase permet de sp´┐Żcifier un mot de passe qui, s'il est pr´┐Żsent dans la session utilisateur, indique ´┐Ż Apache httpd de court-circuiter l'authentification pour l'URL consid´┐Żr´┐Że. On peut l'utiliser dans le cas de sites web ´┐Ż fort trafic afin de r´┐Żduire la charge induite sur l'infrastructure d'authentification.

On peut ins´┐Żrer le mot de passe dans une session utilisateur en ajoutant cette directive ´┐Ż la configuration concernant le gestionnaire form-login-handler. Le gestionnaire form-login-handler, quant ´┐Ż lui, effectuera toujours les v´┐Żrifications d'authentification, qu'un mot de passe soit sp´┐Żcifi´┐Ż ou non.

Avertissement

Si la session est pr´┐Żsent´┐Że ´┐Ż l'utilisateur ´┐Ż l'aide du module mod_session_cookie, et si la session n'est pas prot´┐Żg´┐Że par le module mod_session_crypto, le mot de passe peut faire l'objet d'une attaque de type dictionnaire. Quelle que soit la configuration de la session, assurez-vous que cette directive n'est pas utilis´┐Że dans un espace d'URLs contenant des donn´┐Żes priv´┐Żes, ou ´┐Ż partir desquelles des transactions sensibles pourraient ´┐Żtre men´┐Żes. En tout ´┐Żtat de cause, vous devez ´┐Żtre conscient des risques encourus avant de l'utiliser.

top

AuthFormSize Directive

Description:La taille maximale en octets du formulaire dont seront extraites les informations de connexion
Syntaxe:AuthFormSize taille
D´┐Żfaut:8192
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.0 du serveur HTTP Apache

La directive AuthFormSize permet de sp´┐Żcifier la taille maximale du corps de la requ´┐Żte qui sera utilis´┐Że pour trouver le formulaire de connexion.

Si une requ´┐Żte de connexion entrante poss´┐Żde une taille sup´┐Żrieure ´┐Ż cette valeur, elle sera rejet´┐Że avec le code de r´┐Żponse HTTP HTTP_REQUEST_TOO_LARGE.

Si vous avez ajout´┐Ż au formulaire des champs d´┐Żcrits dans AuthFormMethod, AuthFormMimetype et AuthFormBody, il est recommand´┐Ż de d´┐Żfinir cette directive ´┐Ż une valeur similaire ´┐Ż celle de la directive KeptBodySize.

top

AuthFormUsername Directive

Description:Le nom du champ de formulaire qui contient le nom de connexion
Syntaxe:AuthFormUsername nom du champ
D´┐Żfaut:httpd_username
Contexte:r´┐Żpertoire
Statut:Base
Module:mod_auth_form
Compatibilit´┐Ż:Disponible depuis la version 2.3.3 du serveur HTTP Apache

La directive AuthFormUsername permet de sp´┐Żcifier le nom du champ HTML qui, s'il existe, contiendra le nom d'utilisateur qui sera utilis´┐Ż pour la connexion.

Langues Disponibles:  en  |  fr 

top

Commentaires

Notice:
This is not a Q&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 mailing lists.