diff options
author | Bob Beck <beck@cvs.openbsd.org> | 2000-12-15 22:18:43 +0000 |
---|---|---|
committer | Bob Beck <beck@cvs.openbsd.org> | 2000-12-15 22:18:43 +0000 |
commit | eac93d7ea2b0be162ac7484c51dac808cc2493f0 (patch) | |
tree | 9c0b7818b8a966fe0c35f352957e60837ee1c1cc /usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html | |
parent | 62b2dc3d6a63b189fff9c8dd45936718011a8b7c (diff) |
apache 1.3.14 + mod_ssl 2.7.1 merge
Diffstat (limited to 'usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html')
-rw-r--r-- | usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html | 220 |
1 files changed, 148 insertions, 72 deletions
diff --git a/usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html b/usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html index 7098d3ead3e..6f144f566c3 100644 --- a/usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html +++ b/usr.sbin/httpd/htdocs/manual/mod/mod_auth_dbm.html @@ -15,96 +15,152 @@ <DIV ALIGN="CENTER"> <IMG SRC="../images/sub.gif" ALT="[APACHE DOCUMENTATION]"> <H3> - Apache HTTP Server Version 1.2 + Apache HTTP Server Version 1.3 </H3> </DIV> -<H1 ALIGN="CENTER">Module mod_auth_dbm</h1> - -This module is contained in the <code>mod_auth_dbm.c</code> file, and -is not compiled in by default. It provides for user authentication using -DBM files. - - -<menu> -<li><A HREF="#authdbmgroupfile">AuthDBMGroupFile</A> -<li><A HREF="#authdbmuserfile">AuthDBMUserFile</A> -<li><A HREF="#authdbmauthoritative">AuthDBMAuthoritative</A> -</menu> -<hr> +<H1 ALIGN="CENTER">Module mod_auth_dbm</H1> + +<p>This module provides for user authentication using DBM files.</p> + +<P><A +HREF="module-dict.html#Status" +REL="Help" +><STRONG>Status:</STRONG></A> Extension +<BR> +<A +HREF="module-dict.html#SourceFile" +REL="Help" +><STRONG>Source File:</STRONG></A> mod_auth_dbm.c +<BR> +<A +HREF="module-dict.html#ModuleIdentifier" +REL="Help" +><STRONG>Module Identifier:</STRONG></A> dbm_auth_module +</P> + +<h2>Summary</h2> + +<p>This module provides for HTTP Basic Authentication, where the +usernames and passwords are stored in DBM type database files. It is +an alternative to the plain text password files provided by <a +href="mod_auth.html">mod_auth</A> and the Berkely DB password files +provided by <a href="mod_auth_db.html">mod_auth_db</a>.</p> + +<h2>Directives</h2> + +<ul> +<LI><A HREF="#authdbmgroupfile">AuthDBMGroupFile</A> +<LI><A HREF="#authdbmuserfile">AuthDBMUserFile</A> +<LI><A HREF="#authdbmauthoritative">AuthDBMAuthoritative</A> +</ul> + +<p>See also: <a href="core.html#satisfy">Satisfy</a> and +<a href="core.html#require">Require</a>. +<HR> -<A name="authdbmgroupfile"><h2>AuthDbmGroupFile</h2></A> -<!--%plaintext <?INDEX {\tt AuthDbmGroupFile} directive> --> -<strong>Syntax:</strong> AuthDBMGroupFile <em>filename</em><br> -<Strong>Context:</strong> directory, .htaccess<br> -<Strong>Override:</strong> AuthConfig<br> -<strong>Status:</strong> Extension<br> -<strong>Module:</strong> mod_auth_dbm<p> +<H2><A NAME="authdbmgroupfile">AuthDBMGroupFile</A></H2> +<!--%plaintext <?INDEX {\tt AuthDBMGroupFile} directive> --> +<A + HREF="directive-dict.html#Syntax" + REL="Help" +><STRONG>Syntax:</STRONG></A> AuthDBMGroupFile <EM>filename</EM><BR> +<A + HREF="directive-dict.html#Context" + REL="Help" +><STRONG>Context:</STRONG></A> directory, .htaccess<BR> +<A + HREF="directive-dict.html#Override" + REL="Help" +><STRONG>Override:</STRONG></A> AuthConfig<BR> +<A + HREF="directive-dict.html#Status" + REL="Help" +><STRONG>Status:</STRONG></A> Extension<BR> +<A + HREF="directive-dict.html#Module" + REL="Help" +><STRONG>Module:</STRONG></A> mod_auth_dbm<P> The AuthDBMGroupFile directive sets the name of a DBM file containing the list -of user groups for user authentication. <em>Filename</em> is the absolute path -to the group file.<p> +of user groups for user authentication. <EM>Filename</EM> is the absolute path +to the group file.<P> The group file is keyed on the username. The value for a user is a comma-separated list of the groups to which the users belongs. There must -be no whitespace within the value, and it must never contain any colons.<p> +be no whitespace within the value, and it must never contain any colons.<P> Security: make sure that the AuthDBMGroupFile is stored outside the -document tree of the web-server; do <em>not</em> put it in the directory that +document tree of the web-server; do <EM>not</EM> put it in the directory that it protects. Otherwise, clients will be able to download the -AuthDBMGroupFile unless otherwise protected.<p> +AuthDBMGroupFile unless otherwise protected.<P> Combining Group and Password DBM files: In some cases it is easier to manage a single database which contains both the password and group details for each user. This simplifies any support programs that need to be written: they now only have to deal with writing to and locking a single DBM file. This can be accomplished by first setting the group -and password files to point to the same DBM:<p> +and password files to point to the same DBM:<P> -<blockquote><code> -AuthDBMGroupFile /www/userbase<br> +<BLOCKQUOTE><CODE> +AuthDBMGroupFile /www/userbase<BR> AuthDBMUserFile /www/userbase -</code></blockquote> +</CODE></BLOCKQUOTE> -The key for the single DBM is the username. The value consists of <p> +The key for the single DBM is the username. The value consists of <P> -<blockquote><code> +<BLOCKQUOTE><CODE> Unix Crypt-ed Password : List of Groups [ : (ignored) ] -</code></blockquote> +</CODE></BLOCKQUOTE> The password section contains the Unix crypt() password as before. This is followed by a colon and the comma separated list of groups. Other data may optionally be left in the DBM file after another colon; it is ignored by the authentication module. This is what www.telescope.org uses for its combined -password and group database. <p> +password and group database. <P> See also <A HREF="core.html#authname">AuthName</A>, <A HREF="core.html#authtype">AuthType</A> and -<A HREF="#authdbmuserfile">AuthDBMUserFile</A>.<p><hr> +<A HREF="#authdbmuserfile">AuthDBMUserFile</A>.<P><HR> -<A name="authdbmuserfile"><h2>AuthDBMUserFile</h2></A> +<H2><A NAME="authdbmuserfile">AuthDBMUserFile</A></H2> <!--%plaintext <?INDEX {\tt AuthDBMUserFile} directive> --> -<strong>Syntax:</strong> AuthDBMUserFile <em>filename</em><br> -<Strong>Context:</strong> directory, .htaccess<br> -<Strong>Override:</strong> AuthConfig<br> -<strong>Status:</strong> Extension<br> -<strong>Module:</strong> mod_auth_dbm<p> +<A + HREF="directive-dict.html#Syntax" + REL="Help" +><STRONG>Syntax:</STRONG></A> AuthDBMUserFile <EM>filename</EM><BR> +<A + HREF="directive-dict.html#Context" + REL="Help" +><STRONG>Context:</STRONG></A> directory, .htaccess<BR> +<A + HREF="directive-dict.html#Override" + REL="Help" +><STRONG>Override:</STRONG></A> AuthConfig<BR> +<A + HREF="directive-dict.html#Status" + REL="Help" +><STRONG>Status:</STRONG></A> Extension<BR> +<A + HREF="directive-dict.html#Module" + REL="Help" +><STRONG>Module:</STRONG></A> mod_auth_dbm<P> The AuthDBMUserFile directive sets the name of a DBM file containing the list -of users and passwords for user authentication. <em>Filename</em> is the -absolute path to the user file.<p> +of users and passwords for user authentication. <EM>Filename</EM> is the +absolute path to the user file.<P> The user file is keyed on the username. The value for a user is the crypt() encrypted password, optionally followed by a colon and arbitrary data. The colon and the data following it will be ignored -by the server.<p> +by the server.<P> Security: make sure that the AuthDBMUserFile is stored outside the -document tree of the web-server; do <em>not</em> put it in the directory that +document tree of the web-server; do <EM>not</EM> put it in the directory that it protects. Otherwise, clients will be able to download the -AuthDBMUserFile.<p> +AuthDBMUserFile.<P> Important compatibility note: The implementation of "dbmopen" in the apache modules reads the string length of the hashed values from the @@ -112,44 +168,63 @@ DBM data structures, rather than relying upon the string being NULL-appended. Some applications, such as the Netscape web server, rely upon the string being NULL-appended, so if you are having trouble using DBM files interchangeably between applications this may be a -part of the problem. <p> +part of the problem. <P> See also <A HREF="core.html#authname">AuthName</A>, <A HREF="core.html#authtype">AuthType</A> and -<A HREF="#authdbmgroupfile">AuthDBMGroupFile</A>.<p> +<A HREF="#authdbmgroupfile">AuthDBMGroupFile</A>.<P> -<hr> -<A name="authdbmauthoritative"><h2>AuthDBMAuthoritative</h2></A> +<HR> +<H2><A NAME="authdbmauthoritative">AuthDBMAuthoritative</A></H2> <!--%plaintext <?INDEX {\tt AuthDBMAuthoritative} directive> --> -<strong>Syntax:</strong> AuthDBMAuthoritative < <strong> on</strong>(default) | off > <br> -<Strong>Context:</strong> directory, .htaccess<br> -<Strong>Override:</strong> AuthConfig<br> -<strong>Status:</strong> Base<br> -<strong>Module:</strong> mod_auth<p> - -Setting the AuthDBMAuthoritative directive explicitly to <b>'off'</b> +<A + HREF="directive-dict.html#Syntax" + REL="Help" +><STRONG>Syntax:</STRONG></A> AuthDBMAuthoritative < <STRONG> on</STRONG> | off > <BR> +<A + HREF="directive-dict.html#Default" + REL="Help" +><STRONG>Default:</STRONG></A> <code>AuthDBMAuthoritative on</code><br> +<A + HREF="directive-dict.html#Context" + REL="Help" +><STRONG>Context:</STRONG></A> directory, .htaccess<BR> +<A + HREF="directive-dict.html#Override" + REL="Help" +><STRONG>Override:</STRONG></A> AuthConfig<BR> +<A + HREF="directive-dict.html#Status" + REL="Help" +><STRONG>Status:</STRONG></A> Extension<BR> +<A + HREF="directive-dict.html#Module" + REL="Help" +><STRONG>Module:</STRONG></A> mod_auth_dbm<P> + +Setting the AuthDBMAuthoritative directive explicitly to <STRONG>'off'</STRONG> allows for both authentication and authorization to be passed on -to lower level modules (as defined in the <code>Configuration</code> -and <code>modules.c</code> file if there is <b>no userID</b> or -<b>rule</b> matching the supplied userID. If there is a userID +to lower level modules (as defined in the <CODE>Configuration</CODE> +and <CODE>modules.c</CODE> file if there is <STRONG>no userID</STRONG> or +<STRONG>rule</STRONG> matching the supplied userID. If there is a userID and/or rule specified; the usual password and access checks will be applied and a failure will give an Authorization Required reply. -<p> +<P> So if a userID appears in the database of more than one module; or -if a valid require directive applies to more than one module; then +if a valid <CODE>Require</CODE> directive applies to more than one module; then the first module will verify the credentials; and no access is -passed on; regardless of the AuthAuthoritative setting. <p> +passed on; regardless of the AuthAuthoritative setting. <P> A common use for this is in conjunction with one of the basic auth -modules; such as <a href="mod_auth.html"><code>mod_auth.c</code></a>. +modules; such as <A HREF="mod_auth.html"><CODE>mod_auth.c</CODE></A>. Whereas this DBM module supplies the bulk of the user credential checking; a few (administrator) related accesses fall through to -a lower level with a well protected .htpasswd file. <p> +a lower level with a well protected .htpasswd file. <P> -<b>Default:</b> By default; control is not passed on; and an unknown -userID or rule will result in an Authorization Required reply. Not -setting it thus keeps the system secure; and forces an NSCA compliant -behaviour. <p> + +By default, control is not passed on and an unknown userID or rule +will result in an Authorization Required reply. Not setting it thus +keeps the system secure and forces an NCSA compliant behaviour. <P> Security: Do consider the implications of allowing a user to allow fall-through in his .htaccess file; and verify that this is really @@ -157,14 +232,15 @@ what you want; Generally it is easier to just secure a single .htpasswd file, than it is to secure a database which might have more access interfaces. -<p> +<P> See also <A HREF="core.html#authname">AuthName</A>, <A HREF="core.html#authtype">AuthType</A> and -<A HREF="#authdbmgroupfile">AuthDBMGroupFile</A>.<p> +<A HREF="#authdbmgroupfile">AuthDBMGroupFile</A>.<P> <HR> + <H3 ALIGN="CENTER"> - Apache HTTP Server Version 1.2 + Apache HTTP Server Version 1.3 </H3> <A HREF="./"><IMG SRC="../images/index.gif" ALT="Index"></A> |