Accès anonyme
Même si des mots de passe protègent l’accès à certains éléments, vous voudrez parfois autoriser des invités à partager les plaisirs de votre site -- un nombre réduit de plaisirs, évidemment, choisis d’après le nom d’utilisateur passé au navigateur client. Le module mod_auth_anon.c vous permet de mettre cet accès en place.
Nous devons préciser que toute cette entreprise semble assez stupide : si vous voulez sécuriser tout votre site, utilisez SSL ; si vous voulez ensuite que certaines parties soient accessibles à tous, donnez-leur une URL différente ou un lien à partir d’une page d’accueil. Cependant, il semblerait que certains veuillent procéder de cette manière pour capturer les adresses de courier de leurs visiteurs (en utilisant la convention bien établie de l’utilisation de l’adresse de courrier comme mot de passe des accès anonymes) : si c’est ce que vous souhaitez et que les navigateurs de vos clients sont configurés pour fournir cette information, voici comment faire.
Le module doit avoir été compilé automatiquement -- vous pouvez le vérifier en examinant le fichier Configuration ou en lançant la commande httpd -l. Si ce n’est pas le cas, vous obtiendrez sûrement ce message d’erreur inquiétant :
Invalid command Anonymous
lorsque vous essaierez d’utiliser la directive Anonymous. Le fichier de configuration du serveur de .site.anon/conf/httpd.conf contient les lignes suivantes :
User webuser
Group webgroup
ServerName www.butterthlies.com
IdentityCheck on
NameVirtualHost 192.168.123.2
<VirtualHost www.butterthlies.com>
ServerAdmin sales@butterthlies.com
DocumentRoot /usr/www/APACHE3/site.anon/htdocs/customers
ServerName www.butterthlies.com
ErrorLog /usr/www/APACHE3/site.anon/logs/customers/error_log
TransferLog /usr/www/APACHE3/site.anon/logs/access_log
ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin
</VirtualHost>
<VirtualHost sales.butterthlies.com>
ServerAdmin sales_mgr@butterthlies.com
DocumentRoot /usr/www/APACHE3/site.anon/htdocs/salesmen
ServerName sales.butterthlies.com
ErrorLog /usr/www/APACHE3/site.anon/logs/error_log
TransferLog /usr/www/APACHE3/site.anon/logs/salesmen/access_log
ScriptAlias /cgi-bin /usr/www/APACHE3/cgi-bin
<Directory /usr/www/APACHE3/site.anon/htdocs/salesmen>
AuthType Basic
AuthName darkness
AuthUserFile /usr/www/APACHE3/ok_users/sales
AuthGroupFile /usr/www/APACHE3/ok_users/groups
require valid-user
Anonymous guest anonymous air-head
Anonymous_NoUserID on
</Directory>
</VirtualHost>
Faites la commande go et essayez d’accéder à http://sales.butterthlies.com/ : un mot de passe devrait vous être demandé. La différence est que, maintenant, vous pouvez également entrer sur le site en tant que guest, air-head ou anonymous. Il vous faudra peut-être renseigner le champ du mot de passe. Les directives Anonymous sont décrites ci-dessous.
Anonymous
Anonymous utilisateur1 utilisateur2 ...
L’utilisateur peut se connecter sous l’une des identités de la liste mais doit renseigner le champ mot de passe, sauf si celui-ci est désactivé par une autre directive.
Anonymous_NoUserID
Anonymous_NoUserID [on|off]
Valeur par défaut : off
Répertoire, .htaccess
Si cette directive vaut on, les utilisateurs peuvent laisser vide le champ concernant leur identité mais doivent quand même renseigner le champ mot de passe.
Anonymous_LogEmail
Anonymous_LogEmail [on|off]
Valeur par défaut : on
Répertoire, .htaccess
Si cette directive vaut on, les accès sont enregistrés dans le fichier journal .logs/httpd_log, ou dans le fichier précisé par la directive TransferLog.
Anonymous_VerifyEmail
Anonymous_VerifyEmail [on|off] Valeur par défaut : off Répertoire, .htaccess
Si cette directive vaut on, le mot de passe de l’utilisateur doit contenir au moins un caractère @ et un point.
Anonymous_Authoritative
Anonymous_Authoritative [on|off]
Valeur par défaut : off
Répertoire, .htaccess
Si cette directive vaut on et que le client n’obtient pas l’autorisation de se connecter de façon anonyme, tout accès lui est interdit. Si elle vaut off, les autres schémas d’autorisation peuvent quand même être utilisés.
Anonymous_MustGiveEmail
Anonymous_MustGiveEmail [on|off]
Valeur par défaut : on
Répertoire, .htaccess
Si cette directive vaut on, l’utilisateur doit fournir une adresse email comme mot de passe : cela interdit donc les mots de passe vides.