| <?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="en" xml:lang="en"><head><!-- |
| XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
| This file is generated from xml source: DO NOT EDIT |
| XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX |
| --><title>mod_authn_anon - Apache HTTP Server</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 href="../images/favicon.ico" rel="shortcut icon" /></head><body><div id="page-header"><p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p><p class="apache">Apache HTTP Server Version 2.0</p><img alt="" src="../images/feather.gif" /></div><div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div><div id="path"><a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs-project/">Documentation</a> > <a href="../">Version 2.0</a> > <a href="./">Modules</a></div><div id="page-content"><div id="preamble"><h1>Apache Module mod_authn_anon</h1><table class="module"><tr><th><a href="module-dict.html#Description">Description: |
| </a></th><td>Allows "anonymous" user access to authenticated |
| areas</td></tr><tr><th><a href="module-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="module-dict.html#ModuleIdentifier">Module Identifier: |
| </a></th><td>authn_anon_module</td></tr><tr><th><a href="module-dict.html#SourceFile">Source File: |
| </a></th><td>mod_authn_anon.c</td></tr><tr><th><a href="module-dict.html#Compatibility">Compatibility: |
| </a></th><td>Available in Apache 2.0.44 and later</td></tr></table><h3>Summary</h3> |
| <p>This module does access control in a manner similar to |
| anonymous-ftp sites; <em>i.e.</em> have a 'magic' user id |
| 'anonymous' and the email address as a password. These email |
| addresses can be logged.</p> |
| |
| <p>Combined with other (database) access control methods, this |
| allows for effective user tracking and customization according |
| to a user profile while still keeping the site open for |
| 'unregistered' users. One advantage of using Auth-based user |
| tracking is that, unlike magic-cookies and funny URL |
| pre/postfixes, it is completely browser independent and it |
| allows users to share URLs.</p> |
| </div><div id="quickview"><h3 class="directives">Directives</h3><ul id="toc"><li><img alt="" src="../images/down.gif" /> <a href="#anonymous">Anonymous</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_authoritative">Anonymous_Authoritative</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_logemail">Anonymous_LogEmail</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_mustgiveemail">Anonymous_MustGiveEmail</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_nouserid">Anonymous_NoUserID</a></li> |
| <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_verifyemail">Anonymous_VerifyEmail</a></li> |
| </ul><h3>Topics</h3><ul id="topics"><li><img alt="" src="../images/down.gif" /> Example</li></ul></div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="section"><h2>Example</h2> |
| |
| <p>The example below (when combined with the Auth directives of a |
| htpasswd-file based (or GDM, mSQL <em>etc.</em>) base access |
| control system allows users in as 'guests' with the following |
| properties:</p> |
| |
| <ul> |
| <li>It insists that the user enters a userId. |
| (<code>Anonymous_NoUserId</code>)</li> |
| |
| <li>It insists that the user enters a password. |
| (<code>Anonymous_MustGiveEmail</code>)</li> |
| |
| <li>The password entered must be a valid email address, ie. |
| contain at least one '@' and a '.'. |
| (<code>Anonymous_VerifyEmail</code>)</li> |
| |
| <li>The userID must be one of <code>anonymous guest www test |
| welcome</code> and comparison is <strong>not</strong> case |
| sensitive.</li> |
| |
| <li>And the Email addresses entered in the passwd field are |
| logged to the error log file |
| (<code>Anonymous_LogEmail</code>)</li> |
| </ul> |
| |
| <p>Excerpt of httpd.conf:</p> |
| |
| <div class="example"><p><code> |
| Anonymous_NoUserId off<br /> |
| Anonymous_MustGiveEmail on<br /> |
| Anonymous_VerifyEmail on<br /> |
| Anonymous_LogEmail on<br /> |
| Anonymous anonymous guest www test welcome<br /> |
| <br /> |
| AuthName "Use 'anonymous' & Email address for |
| guest entry"<br /> |
| AuthType basic<br /> |
| <br /> |
| # An |
| AuthUserFile/AuthDBMUserFile<br /> |
| # directive must be specified, or use<br /> |
| # Anonymous_Authoritative for public access.<br /> |
| # In the .htaccess for the public directory, add:<br /> |
| <Files *><br /> |
| Order Deny,Allow<br /> |
| Allow from all<br /> |
| <br /> |
| Require valid-user<br /> |
| </Files><br /> |
| </code></p></div> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous" id="Anonymous">Anonymous</a> <a name="anonymous" id="anonymous">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Specifies userIDs that areallowed access without |
| password verification</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous <em>user</em> [<em>user</em>] ...</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>A list of one or more 'magic' userIDs which are allowed |
| access without password verification. The userIDs are space |
| separated. It is possible to use the ' and " quotes to allow a |
| space in a userID as well as the \ escape character.</p> |
| |
| <p>Please note that the comparison is |
| <strong>case-IN-sensitive</strong>.<br /> |
| I strongly suggest that the magic username |
| '<code>anonymous</code>' is always one of the allowed |
| userIDs.</p> |
| |
| <p>Example:</p> |
| <div class="example"><p><code>Anonymous anonymous "Not Registered" 'I don\'t know'</code></p></div> |
| |
| <p>This would allow the user to enter without password |
| verification by using the userId's 'anonymous', |
| 'AnonyMous','Not Registered' and 'I Don't Know'.</p> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous_Authoritative" id="Anonymous_Authoritative">Anonymous_Authoritative</a> <a name="anonymous_authoritative" id="anonymous_authoritative">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Configures if authorization will fall-through |
| to other methods</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous_Authoritative on|off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default: |
| </a></th><td><code>Anonymous_Authoritative off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>When set 'on', there is no fall-through to other authorization |
| methods. So if a userID does not match the values specified in the |
| <code class="directive"><a href="#anonymous">Anonymous</a></code> directive, |
| access is denied.</p> |
| |
| <p>Be sure you know what you are doing when you decide to |
| switch it on. And remember that it is the linking order of the |
| modules (in the Configuration / Make file) which details the |
| order in which the Authorization modules are queried.</p> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous_LogEmail" id="Anonymous_LogEmail">Anonymous_LogEmail</a> <a name="anonymous_logemail" id="anonymous_logemail">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Sets whether the password entered will be logged in the |
| error log</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous_LogEmail on|off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default: |
| </a></th><td><code>Anonymous_LogEmail on</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>When set <code>on</code>, the default, the 'password' entered |
| (which hopefully contains a sensible email address) is logged in |
| the error log.</p> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous_MustGiveEmail" id="Anonymous_MustGiveEmail">Anonymous_MustGiveEmail</a> <a name="anonymous_mustgiveemail" id="anonymous_mustgiveemail">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Specifies whether blank passwords are allowed</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous_MustGiveEmail on|off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default: |
| </a></th><td><code>Anonymous_MustGiveEmail on</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>Specifies whether the user must specify an email address as |
| the password. This prohibits blank passwords.</p> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous_NoUserID" id="Anonymous_NoUserID">Anonymous_NoUserID</a> <a name="anonymous_nouserid" id="anonymous_nouserid">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Sets whether the userID field may be empty</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous_NoUserID on|off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default: |
| </a></th><td><code>Anonymous_NoUserID off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>When set <code>on</code>, users can leave the userID (and |
| perhaps the password field) empty. This can be very convenient for |
| MS-Explorer users who can just hit return or click directly on the |
| OK button; which seems a natural reaction.</p> |
| </div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div><div class="directive-section"><h2><a name="Anonymous_VerifyEmail" id="Anonymous_VerifyEmail">Anonymous_VerifyEmail</a> <a name="anonymous_verifyemail" id="anonymous_verifyemail">Directive</a></h2><table class="directive"><tr><th><a href="directive-dict.html#Description">Description: |
| </a></th><td>Sets whether to check the password field for a correctly |
| formatted email address</td></tr><tr><th><a href="directive-dict.html#Syntax">Syntax: |
| </a></th><td><code>Anonymous_VerifyEmail on|off</code></td></tr><tr><th><a href="directive-dict.html#Default">Default: |
| </a></th><td><code>Anonymous_VerifyEmail off</code></td></tr><tr><th><a href="directive-dict.html#Context">Context: |
| </a></th><td>directory, .htaccess</td></tr><tr><th><a href="directive-dict.html#Override">Override: |
| </a></th><td>AuthConfig</td></tr><tr><th><a href="directive-dict.html#Status">Status: |
| </a></th><td>Extension</td></tr><tr><th><a href="directive-dict.html#Module">Module: |
| </a></th><td>mod_authn_anon</td></tr></table> |
| <p>When set <code>on</code> the 'password' entered is checked for |
| at least one '@' and a '.' to encourage users to enter valid email |
| addresses (see the above <code class="directive"><a href="#auth_logemail">Auth_LogEmail</a></code>).</p> |
| </div></div><div id="footer"><p class="apache">Maintained by the <a href="http://httpd.apache.org/docs-project/">Apache HTTP Server Documentation Project</a></p><p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/directives.html">Directives</a> | <a href="../faq/">FAQ</a> | <a href="../glossary.html">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div></body></html> |