mod_auth_anon.html revision e3d0ad4177632a17c3f1fa733a9623abf54cd289
1322N/A<html>
1322N/A<head>
1322N/A<title>Module mod_auth_anon.c</title>
1322N/A</head>
1322N/A<body>
1322N/A<!--#include virtual="header.html" -->
1322N/A<H1>Module mod_auth_anon</H1>
1322N/A
1322N/AThis module is contained in the <code>mod_auth_anon.c</code> file and
1322N/Ais compiled in by default. It is only available in Apache 1.1 and
1322N/Alater.
1322N/A<p>
1322N/AIt does access control in a manner similar to anonymous-ftp sites; i.e.
1322N/Ahave a 'magic' user id 'anonymous' and the email address as a password.
1322N/AThese email addresses can be logged.
1322N/A<p>
1322N/ACombined with other (database) access control methods, this allows for
1322N/Aeffective user tracking and customization according to a user profile
1322N/Awhile still keeping the site open for 'unregistered' users. One advantage
1322N/Aof using Auth-based user tracking is that, unlike magic-cookies and
1322N/Afunny URL pre/postfixes, it is completely browser independent and it
1322N/Aallows users to share URLs.
1322N/A<p>
1322N/A
5177N/A<a href="#FullDescription">Full description</a> /
5449N/A<a href="#Example">Example</a> /
1322N/A<a href="#CompileTimeOptions">Compile time options</a> /
1322N/A<a href="#RevisionHistory">RevisionHistory</a> /
1322N/A<a href="#Person">Person to blame</a> /
5449N/A<a href="#Sourcecode">Sourcecode</a>
5449N/A<p>
1322N/A
1322N/A<hr><h2><a name="FullDescription">Full description of all tokens</a></h2>
1322N/A<dl>
1322N/A
1322N/A<code><dt>
1322N/AAnonymous &lt; Space separated list &gt
1322N/A</code></dt><dd>
1322N/A A list of one or more 'magic' userIDs which are allowed access
1322N/A without password verification. The userIDs are space separated.
1322N/A It is possible to use the ' and " quotes to allow a space in
3853N/A a userID as well as the \ escape character.
1322N/A <p>
3988N/A Please note that the comparison is <b>case-IN-sensitive</b>.
1322N/A <br>
1322N/A I strongly suggest that the magic username '<code>anonymous</code>'
1322N/A is always one of the allowed userIDs.
3988N/A <p>
1322N/A Example:<br>
1322N/A <code>
1322N/A Anonymous: anonymous "Not Registered" 'I don\'t know'
1322N/A </code><p>
1322N/A This would allow the user to enter without password verification
1322N/A by using the userId's 'anonymous', 'AnonyMous','Not Registered' and
1322N/A 'I Don't Know'.
1322N/A</dd>
3853N/A
1322N/A<code><dt>
1322N/AAnonymous_LogEmail &lt; on | off &gt
1322N/A</code></dt><dd>
3853N/A When set 'on', the default, the 'password' entered (which hopefully
1322N/A contains a sensible email address) is logged in the httpd-log file.
1322N/A</dd>
1322N/A
1322N/A<code><dt>
1322N/AAnonymous_VerifyEmail &lt; on | off &gt
1322N/A</code></dt><dd>
1322N/A When set 'on', the default is 'off', the 'password' entered is
1322N/A checked for at least one '@' and a '.' to encourage users to enter
1322N/A valid email addressses (see the above <code>Auth_LogEmail</code>.
1322N/A</dd>
1322N/A
3853N/A<code><dt>
1322N/AAnonymous_NoUserID &lt; on | off &gt
1322N/A</code></dt><dd>
1322N/A When set 'on', the default is 'off', users can leave
1322N/A the userID (and perhaps the password field) empty. This
1322N/A can be very convenient for MS-Explorer users who can
3853N/A just hit return or click directly on the OK button; which
1322N/A seems a natural reaction.
1322N/A</dd>
1322N/A
1322N/A<code><dt>
1322N/A<a name="Authorative">Anonymous_Authorative &lt; on | off &gt</a>
1322N/A</code></dt><dd>
1322N/A Default is 'off'. When set 'on', there is no
1322N/A fall-through to other authorization methods. So if a
1322N/A userID does not match the values specified in the
1322N/A <code>Anonymous</code> directive, access is denied.
1322N/A <p>
3543N/A Be sure you know what you are doing when you decide to switch
1322N/A it on. And remember that it is the linking order of the modules
1322N/A (in the Configuration / Make file) which details the order
1322N/A in which the Authorization modules are queried.
3988N/A</dd>
3853N/A
4802N/A</dl>
4802N/A
4802N/A
1322N/A<hr><a name="Example"><h2>Example</h2></a>
1322N/A
1322N/AThe example below (when combined with the Auth directives
1322N/Aof a htpasswd-file based (or GDM, mSQL etc) base access
1322N/Acontrol system allows users in as 'guests' with the
1322N/Afollowing properties:
1322N/A<ul>
1322N/A<li>
1322N/AIt insists that the user enters a userId. (<code>Anonymous_NoUserId</code>)
1322N/A<li>
1322N/AIt insists that the user enters a password. (<code>Anonymous_MustGiveEmail</code>)
1322N/A<li>
1322N/AThe password entered must be a valid email address, ie. contain at least one '@' and a '.'.
1322N/A(<code>Anonymous_VerifyEmail</code>)
1322N/A<li>
1322N/AThe userID must be one of <code>anonymous guest www test welcome</code>
1322N/Aand comparison is <b>not</b> case sensitive.
1322N/A<code>&lt;directory /web/docs/public&gt;</code>
3853N/A<li>
1322N/AAnd the Email addresses entered in the passswd field are logged to
3853N/Athe httpd-log file
1322N/A(<code>Anonymous_LogEmail</code>)
1322N/A</ul>
1322N/A<p>
1322N/AExcerp of access.conf:
1322N/A<dl>
1322N/A<dt><code>
1322N/AAnonymous anonymous guest www test welcome<p>
1322N/AAnonymous_MustGiveEmail on<br>
1322N/AAnonymous_VerifyEmail on<br>
1322N/AAnonymous_NoUserId off<br>
1322N/AAnonymous_LogEmail on<br>
3853N/A<p>
1322N/AAuthName Use 'anonymous' & Email address for guest entry<br>
1322N/AAuthType basic<p>
1322N/A
1322N/A</code></dt>
1322N/A<dd>
1322N/A Normal Apache/NCSA tokens for access control
3853N/A <p>
1322N/A <code>&lt;limit get post head&gt</code><br>
3105N/A <code>order deny,allow </code><br>
1322N/A <code>allow from all </code><br>
1322N/A <p>
3853N/A <code>require valid-user </code><br>
1322N/A <code>&lt;limit&gt </code><br>
1322N/A</dd>
1322N/A</dl>
1322N/A
1322N/A
1322N/A<hr><h2><a name="CompileTimeOptions">Compile Time Options</a></h2>
3853N/A
1322N/ACurrently there are no Compile options.
1322N/A
1322N/A<hr><h2><a name="RevisionHistory">Revision History</a></h2>
1367N/A
1322N/AThis version: 23 Nov 1995, 24 Feb 1996, 16 May 1996.
1322N/A
1322N/A<dl>
1322N/A
1322N/A<dt>Version 0.4<br></dt>
1322N/A <dd>First release
1367N/A </dd>
1322N/A<dt>Version 0.5<br></dt>
1322N/A <dd>Added 'VerifyEmail' and 'LogEmail' options. Multiple
1322N/A 'anonymous' tokes allowed. more docs. Added Authorative
1322N/A functionality.
1322N/A </dd>
3853N/A</dl>
1322N/A
1322N/A
1322N/A<hr><h2><a name="Person">Contact/person to blame</a></h2>
1322N/A
1322N/AThis module was written for the
1322N/A<a href="http://ewse.ceo.org">European Wide Service Exchange</a> by
1322N/A&lt<a href="mailto:Dirk.vanGulik@jrc.it"><code>Dirk.vanGulik@jrc.it</code></a>&gt.
4857N/AFeel free to contact me if you have any problems, icecreams or bugs. This
1322N/Adocumentation, courtesy of Nick Himba, <a href="mailto:himba@cs.utwente.nl">
1322N/A<code>&lt;himba@cs.utwente.nl&gt;</code></a>.
1322N/A<p>
1322N/A
1322N/A
1322N/A<hr><h2><a NAME="Sourcecode">Sourcecode</a></h2>
1322N/A
1322N/AThe source code can be found at <a href="http://www.apache.org"><code>
3853N/Ahttp://www.apache.org</code></a>. A snapshot of a development version
1322N/Ausually resides at <a href="http://me-www.jrc.it/~dirkx/mod_auth_anon.c"><code>
1322N/Ahttp://me-www.jrc.it/~dirkx/mod_auth_anon.c</code></a>. Please make sure
1322N/Athat you always quote the version you use when filing a bug report.
1322N/A<p>
1322N/A
1322N/A<!--#include virtual="footer.html" -->
1322N/A</body>
1322N/A</html>
1322N/A
1322N/A