1 <?xml version="1.0" encoding="ISO-8859-1"?>
2 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
3 <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en"><head><!--
4 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
5 This file is generated from xml source: DO NOT EDIT
6 XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
8 <title>mod_authn_anon - Apache HTTP Server</title>
9 <link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
10 <link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
11 <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" />
12 <script src="../style/scripts/prettify.js" type="text/javascript">
15 <link href="../images/favicon.ico" rel="shortcut icon" /></head>
17 <div id="page-header">
18 <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">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p>
19 <p class="apache">Apache HTTP Server Version 2.5</p>
20 <img alt="" src="../images/feather.gif" /></div>
21 <div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
23 <a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">HTTP Server</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Modules</a></div>
24 <div id="page-content">
25 <div id="preamble"><h1>Apache Module mod_authn_anon</h1>
27 <p><span>Available Languages: </span><a href="../en/mod/mod_authn_anon.html" title="English"> en </a> |
28 <a href="../ja/mod/mod_authn_anon.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
29 <a href="../ko/mod/mod_authn_anon.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
31 <table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Allows "anonymous" user access to authenticated
33 <tr><th><a href="module-dict.html#Status">Status:</a></th><td>Extension</td></tr>
34 <tr><th><a href="module-dict.html#ModuleIdentifier">Module Identifier:</a></th><td>authn_anon_module</td></tr>
35 <tr><th><a href="module-dict.html#SourceFile">Source File:</a></th><td>mod_authn_anon.c</td></tr>
36 <tr><th><a href="module-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.1 and later</td></tr></table>
39 <p>This module provides authentication front-ends such as
40 <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code> to authenticate users similar
41 to anonymous-ftp sites, <em>i.e.</em> have a 'magic' user id
42 'anonymous' and the email address as a password. These email
43 addresses can be logged.</p>
45 <p>Combined with other (database) access control methods, this
46 allows for effective user tracking and customization according
47 to a user profile while still keeping the site open for
48 'unregistered' users. One advantage of using Auth-based user
49 tracking is that, unlike magic-cookies and funny URL
50 pre/postfixes, it is completely browser independent and it
51 allows users to share URLs.</p>
53 <p>When using <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code>, this module is invoked
54 via the <code class="directive"><a href="../mod/mod_auth_basic.html#authbasicprovider">AuthBasicProvider</a></code>
55 directive with the <code>anon</code> value.</p>
57 <div id="quickview"><h3 class="directives">Directives</h3>
59 <li><img alt="" src="../images/down.gif" /> <a href="#anonymous">Anonymous</a></li>
60 <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_logemail">Anonymous_LogEmail</a></li>
61 <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_mustgiveemail">Anonymous_MustGiveEmail</a></li>
62 <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_nouserid">Anonymous_NoUserID</a></li>
63 <li><img alt="" src="../images/down.gif" /> <a href="#anonymous_verifyemail">Anonymous_VerifyEmail</a></li>
67 <li><img alt="" src="../images/down.gif" /> <a href="#example">Example</a></li>
68 </ul><ul class="seealso"><li><a href="#comments_section">Comments</a></li></ul></div>
69 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
71 <h2><a name="example" id="example">Example</a></h2>
72 <p>The example below is combined with "normal" htpasswd-file based
73 authentication and allows users in additionally as 'guests' with the
74 following properties:</p>
77 <li>It insists that the user enters a userID.
78 (<code class="directive"><a href="#anonymous_nouserid">Anonymous_NoUserID</a></code>)</li>
80 <li>It insists that the user enters a password.
81 (<code class="directive"><a href="#anonymous_mustgiveemail">Anonymous_MustGiveEmail</a></code>)</li>
83 <li>The password entered must be a valid email address, <em>i.e.</em>
84 contain at least one '@' and a '.'.
85 (<code class="directive"><a href="#anonymous_verifyemail">Anonymous_VerifyEmail</a></code>)</li>
87 <li>The userID must be one of <code>anonymous guest www test
88 welcome</code> and comparison is <strong>not</strong> case
89 sensitive. (<code class="directive"><a href="#anonymous">Anonymous</a></code>)</li>
91 <li>And the Email addresses entered in the passwd field are
92 logged to the error log file.
93 (<code class="directive"><a href="#anonymous_logemail">Anonymous_LogEmail</a></code>)</li>
96 <div class="example"><h3>Example</h3><pre class="prettyprint lang-config">
97 <Directory /var/www/html/private>
98 AuthName "Use 'anonymous' & Email address for guest entry"
100 AuthBasicProvider file anon
101 AuthUserFile /path/to/your/.htpasswd
103 Anonymous_NoUserID off
104 Anonymous_MustGiveEmail on
105 Anonymous_VerifyEmail on
106 Anonymous_LogEmail on
107 Anonymous anonymous guest www test welcome
114 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
115 <div class="directive-section"><h2><a name="Anonymous" id="Anonymous">Anonymous</a> <a name="anonymous" id="anonymous">Directive</a></h2>
116 <table class="directive">
117 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Specifies userIDs that are allowed access without
118 password verification</td></tr>
119 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Anonymous <var>user</var> [<var>user</var>] ...</code></td></tr>
120 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
121 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
122 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
123 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_authn_anon</td></tr>
125 <p>A list of one or more 'magic' userIDs which are allowed
126 access without password verification. The userIDs are space
127 separated. It is possible to use the ' and " quotes to allow a
128 space in a userID as well as the \ escape character.</p>
130 <p>Please note that the comparison is
131 <strong>case-IN-sensitive</strong>.<br />
132 It's strongly recommended that the magic username
133 '<code>anonymous</code>' is always one of the allowed
136 <div class="example"><h3>Example:</h3><pre class="prettyprint lang-config">
137 Anonymous anonymous "Not Registered" "I don't know"
141 <p>This would allow the user to enter without password
142 verification by using the userIDs "anonymous",
143 "AnonyMous", "Not Registered" and "I Don't Know".</p>
145 <p>As of Apache 2.1 it is possible to specify the userID as
146 "<code>*</code>". That allows <em>any</em> supplied userID to be
150 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
151 <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>
152 <table class="directive">
153 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets whether the password entered will be logged in the
155 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Anonymous_LogEmail On|Off</code></td></tr>
156 <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>Anonymous_LogEmail On</code></td></tr>
157 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
158 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
159 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
160 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_authn_anon</td></tr>
162 <p>When set <code>On</code>, the default, the 'password' entered
163 (which hopefully contains a sensible email address) is logged in
167 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
168 <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>
169 <table class="directive">
170 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Specifies whether blank passwords are allowed</td></tr>
171 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Anonymous_MustGiveEmail On|Off</code></td></tr>
172 <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>Anonymous_MustGiveEmail On</code></td></tr>
173 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
174 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
175 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
176 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_authn_anon</td></tr>
178 <p>Specifies whether the user must specify an email address as
179 the password. This prohibits blank passwords.</p>
182 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
183 <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>
184 <table class="directive">
185 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets whether the userID field may be empty</td></tr>
186 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Anonymous_NoUserID On|Off</code></td></tr>
187 <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>Anonymous_NoUserID Off</code></td></tr>
188 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
189 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
190 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
191 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_authn_anon</td></tr>
193 <p>When set <code>On</code>, users can leave the userID (and
194 perhaps the password field) empty. This can be very convenient for
195 MS-Explorer users who can just hit return or click directly on the
196 OK button; which seems a natural reaction.</p>
199 <div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
200 <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>
201 <table class="directive">
202 <tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets whether to check the password field for a correctly
203 formatted email address</td></tr>
204 <tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>Anonymous_VerifyEmail On|Off</code></td></tr>
205 <tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>Anonymous_VerifyEmail Off</code></td></tr>
206 <tr><th><a href="directive-dict.html#Context">Context:</a></th><td>directory, .htaccess</td></tr>
207 <tr><th><a href="directive-dict.html#Override">Override:</a></th><td>AuthConfig</td></tr>
208 <tr><th><a href="directive-dict.html#Status">Status:</a></th><td>Extension</td></tr>
209 <tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_authn_anon</td></tr>
211 <p>When set <code>On</code> the 'password' entered is checked for
212 at least one '@' and a '.' to encourage users to enter valid email
213 addresses (see the above <code class="directive"><a href="#anonymous_logemail">Anonymous_LogEmail</a></code>).</p>
217 <div class="bottomlang">
218 <p><span>Available Languages: </span><a href="../en/mod/mod_authn_anon.html" title="English"> en </a> |
219 <a href="../ja/mod/mod_authn_anon.html" hreflang="ja" rel="alternate" title="Japanese"> ja </a> |
220 <a href="../ko/mod/mod_authn_anon.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
221 </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">Comments</a></h2><div class="warning"><strong>This section is experimental!</strong><br />Comments placed here should not be expected
222 to last beyond the testing phase of this system, nor do we in any way guarantee that we'll read them.</div>
223 <script type="text/javascript"><!--//--><![CDATA[//><!--
225 var disqus_shortname = 'httpd';
226 var disqus_identifier = window.location.href.replace(/(current|trunk)/, "2.4").replace(/\/[a-z]{2}\//, "/").replace(window.location.protocol, "http:") + '.' + lang;
227 if (disqus_identifier.indexOf("httpd.apache.org") == -1) {
228 document.write('<div id="disqus_thread">\n</div>');
230 var dsq = document.createElement('script'); dsq.type = 'text/javascript'; dsq.async = true;
231 dsq.src = window.location.protocol + '//' + disqus_shortname + '.disqus.com/embed.js';
232 (document.getElementsByTagName('head')[0] || document.getElementsByTagName('body')[0]).appendChild(dsq);
235 document.write("Comments have been disabled for offline viewing.");
237 //--><!]]></script></div><div id="footer">
238 <p class="apache">Copyright 2012 The Apache Software Foundation.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
239 <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">Glossary</a> | <a href="../sitemap.html">Sitemap</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
240 if (typeof(prettyPrint) !== undefined) {