mirror of
https://github.com/apache/httpd.git
synced 2025-06-03 10:42:03 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@332905 13f79535-47bb-0310-9956-ffa450edef68
185 lines
11 KiB
XML
185 lines
11 KiB
XML
<?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_authz_dbm - 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.3</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.3</a> > <a href="./">Modules</a></div>
|
||
<div id="page-content">
|
||
<div id="preamble"><h1>Apache Module mod_authz_dbm</h1>
|
||
<div class="toplang">
|
||
<p><span>Available Languages: </span><a href="../en/mod/mod_authz_dbm.html" title="English"> en </a> |
|
||
<a href="../ko/mod/mod_authz_dbm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
|
||
</div>
|
||
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Group authorization using DBM files</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<EFBFBD>Identifier:</a></th><td>authz_dbm_module</td></tr>
|
||
<tr><th><a href="module-dict.html#SourceFile">Source<EFBFBD>File:</a></th><td>mod_authz_dbm.c</td></tr>
|
||
<tr><th><a href="module-dict.html#Compatibility">Compatibility:</a></th><td>Available in Apache 2.1 and later</td></tr></table>
|
||
<h3>Summary</h3>
|
||
|
||
<p>This module provides authorization capabilities so that
|
||
authenticated users can be allowed or denied access to portions
|
||
of the web site by group membership. Similar functionality is
|
||
provided by <code class="module"><a href="../mod/mod_authz_groupfile.html">mod_authz_groupfile</a></code>.</p>
|
||
</div>
|
||
<div id="quickview"><h3 class="directives">Directives</h3>
|
||
<ul id="toc">
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#authdbmgroupfile">AuthDBMGroupFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#authzdbmauthoritative">AuthzDBMAuthoritative</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#authzdbmtype">AuthzDBMType</a></li>
|
||
</ul>
|
||
<h3>See also</h3>
|
||
<ul class="seealso">
|
||
<li><code class="directive"><a href="../mod/core.html#require">Require</a></code></li>
|
||
<li><code class="directive"><a href="../mod/core.html#satisfy">Satisfy</a></code></li>
|
||
</ul></div>
|
||
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="AuthDBMGroupFile" id="AuthDBMGroupFile">AuthDBMGroupFile</a> <a name="authdbmgroupfile" id="authdbmgroupfile">Directive</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets the name of the database file containing the list
|
||
of user groups for authorization</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AuthDBMGroupFile <var>file-path</var></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_authz_dbm</td></tr>
|
||
</table>
|
||
<p>The <code class="directive">AuthDBMGroupFile</code> directive sets the
|
||
name of a DBM file containing the list of user groups for user
|
||
authorization. <var>File-path</var> is the absolute path to the
|
||
group file.</p>
|
||
|
||
<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>
|
||
|
||
<div class="warning"><h3>Security</h3>
|
||
<p>Make sure that the <code class="directive">AuthDBMGroupFile</code> is
|
||
stored outside the document tree of the web-server. Do
|
||
<strong>not</strong> put it in the directory that it protects.
|
||
Otherwise, clients will be able to download the
|
||
<code class="directive">AuthDBMGroupFile</code> unless otherwise
|
||
protected.</p>
|
||
</div>
|
||
|
||
<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>
|
||
|
||
<div class="example"><p><code>
|
||
AuthDBMGroupFile /www/userbase<br />
|
||
AuthDBMUserFile /www/userbase
|
||
</code></p></div>
|
||
|
||
<p>The key for the single DBM is the username. The value consists
|
||
of</p>
|
||
|
||
<div class="example"><p><code>
|
||
Encrypted Password : List of Groups [ : (ignored) ]
|
||
</code></p></div>
|
||
|
||
<p>The password section contains the encrypted
|
||
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 authorization
|
||
module. This is what www.telescope.org uses for its combined
|
||
password and group database.</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="AuthzDBMAuthoritative" id="AuthzDBMAuthoritative">AuthzDBMAuthoritative</a> <a name="authzdbmauthoritative" id="authzdbmauthoritative">Directive</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets whether authorization will be passed on to lower level
|
||
modules</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AuthzDBMAuthoritative On|Off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>AuthzDBMAuthoritative 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_authz_dbm</td></tr>
|
||
</table>
|
||
<p>Setting the <code class="directive">AuthzDBMAuthoritative</code>
|
||
directive explicitly to <code>Off</code> allows group authorization
|
||
to be passed on to lower level modules (as defined in the
|
||
<code>modules.c</code> file) if there is no group found
|
||
for the the supplied userID. If there are any groups
|
||
specified, the usual checks will be applied and a failure will
|
||
give an Authentication Required reply.</p>
|
||
|
||
<p>So if a userID appears in the database of more than one module;
|
||
or if a valid <code class="directive"><a href="../mod/core.html#require">Require</a></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 <code class="directive">AuthAuthoritative</code> setting.</p>
|
||
|
||
<p>A common use for this is in conjunction with one of the
|
||
auth providers; such as <code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code> or
|
||
<code class="module"><a href="../mod/mod_authn_file.html">mod_authn_file</a></code>. 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
|
||
<code>.htpasswd</code> file.</p>
|
||
|
||
<p>By default, control is not passed on and an unknown group
|
||
will result in an Authentication Required reply. Not
|
||
setting it thus keeps the system secure and forces an NCSA
|
||
compliant behaviour.</p>
|
||
|
||
<div class="warning"><h3>Security</h3>
|
||
<p>Do consider the implications of allowing a user to
|
||
allow fall-through in his .htaccess file; and verify that this
|
||
is really what you want; Generally it is easier to just secure
|
||
a single <code>.htpasswd</code> file, than it is to secure a
|
||
database which might have more access interfaces.</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="AuthzDBMType" id="AuthzDBMType">AuthzDBMType</a> <a name="authzdbmtype" id="authzdbmtype">Directive</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Sets the type of database file that is used to
|
||
store list of user groups</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntax:</a></th><td><code>AuthzDBMType default|SDBM|GDBM|NDBM|DB</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">Default:</a></th><td><code>AuthzDBMType default</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_authz_dbm</td></tr>
|
||
</table>
|
||
<p>Sets the type of database file that is used to store the list
|
||
of user groups.
|
||
The default database type is determined at compile time. The
|
||
availability of other types of database files also depends on
|
||
<a href="../install.html#dbm">compile-time settings</a>.</p>
|
||
|
||
<p>It is crucial that whatever program you use to create your group
|
||
files is configured to use the same type of database.</p>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="bottomlang">
|
||
<p><span>Available Languages: </span><a href="../en/mod/mod_authz_dbm.html" title="English"> en </a> |
|
||
<a href="../ko/mod/mod_authz_dbm.html" hreflang="ko" rel="alternate" title="Korean"> ko </a></p>
|
||
</div><div id="footer">
|
||
<p class="apache">Copyright 1995-2005 The Apache Software Foundation or its licensors, as applicable.<br />Licensed under the <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</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> |