📄 dbmmanage.html
字号:
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<meta name="keywords" content="Apache, 中文, 手册, 中文版, 中文手册, 中文版手册, 参考手册, 中文参考手册, 金步国" />
<meta name="description" content="Apache 2.2 中文版参考手册" />
<meta name="author" content="金步国" />
<link href="../style/css/manual-zip.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
<link href="../style/css/manual-zip-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" />
<title>dbmmanage - 管理DBM格式的用户认证文件 - Apache 2.2 中文版参考手册</title>
</head>
<body id="manual-page"><div id="page-header">
<p class="menu"><a href="../mod/index.html">模块索引</a> | <a href="../mod/directives.html">指令索引</a> | <a href="../faq/index.html">常见问题</a> | <a href="../glossary.html">词汇表</a> | <a href="../sitemap.html">站点导航</a></p><p class="apache">Apache HTTP Server 版本2.2</p><img alt="" src="../images/feather.gif" /></div>
<div class="up"><a href="./index.html"><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/">文档</a> > <a href="../index.html">版本2.2</a> > <a href="./index.html">支持程序</a></div>
<div id="translation-info"> <a href="../translator_announcement.html#thanks">致谢</a> | <a href="../translator_announcement.html#announcement">译者声明</a> | 本篇译者:<a href="mailto:csfrank@citiz.net">金步国</a> | 本篇译稿最后更新:2006年1月13日 | <a href="../translator_announcement.html#last_new">获取最新版本</a></div>
<div id="page-content"><div id="preamble"><h1>dbmmanage - 管理DBM格式的用户认证文件</h1>
<p><code>dbmmanage</code>建立和更新存储用户名和密码的DBM格式的文件,以用于<code class="module"><a href="../mod/mod_authn_dbm.html">mod_authn_dbm</a></code>对HTTP用户进行基本认证。Apache HTTP服务器上的有效资源可以被限制为仅允许由<code>dbmmanage</code>建立的文件中的用户所访问。此程序仅用于用户名是存储在一个DBM文件中的情况下,如果使用文本数据库,请参见<code class="program"><a href="../programs/htpasswd.html">htpasswd</a></code> 。</p>
<p>本手册页仅列出命令行参数,配置用户认证的相关信息请参见<code class="program"><a href="../howto/auth.html">认证、授权、访问控制</a></code>文档。</p>
</div>
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="synopsis" id="synopsis">语法</a></h2>
<p><code><strong>dbmmanage</strong> [ <var>encoding</var> ]
<var>filename</var> add|adduser|check|delete|update
<var>username</var>
[ <var>encpasswd</var>
[ <var>group</var>[,<var>group</var>...]
[ <var>comment</var> ] ] ]</code></p>
<p><code><strong>dbmmanage</strong> <var>filename</var>
view [ <var>username</var> ]</code></p>
<p><code><strong>dbmmanage</strong> <var>filename</var> import</code></p>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="options" id="options">选项</a></h2>
<dl>
<dt><code><var>filename</var></code></dt>
<dd>DBM格式文件的文件名。一般不带 <code>.db</code>, <code>.pag</code>, <code>.dir</code> 后缀。</dd>
<dt><code><var>username</var></code></dt>
<dd>操作所针对的用户。<var>username</var>中不能有冒号(<code>:</code>)。</dd>
<dt><code><var>encpasswd</var></code></dt>
<dd>这是已经加密的密码,用于<code>update</code>和<code>add</code>命令。使用一个连字符(<code>-</code>)可以显示输入密码的提示,然后输入。另外,在用于<code>update</code>命令时,使用一个句号(<code>.</code>)可以保持原有密码不变。</dd>
<dt><code><var>group</var></code></dt>
<dd>用户所属的组名,组名中不能有冒号(<code>:</code>)。如果不希望指定该用户所属的组,可以使用一个连字符(<code>-</code>),但是需要填写<var>comment</var>项。另外,在用于<code>update</code>命令时,使用一个句号(<code>.</code>)可以保持原来所属的组不变。</dd>
<dt><code><var>comment</var></code></dt>
<dd>这是对该用户的说明,如真实姓名、邮件地址之类。服务器本身并不使用此信息。</dd>
</dl>
<h3><a name="options.encodings" id="options.encodings">编码</a></h3>
<dl>
<dt><code>-d</code></dt>
<dd>crypt 加密(在Windows和Netware以外平台上的默认值)</dd>
<dt><code>-m</code></dt>
<dd>MD5 加密(在Windows和Netware平台上的默认值)</dd>
<dt><code>-s</code></dt>
<dd>SHA1 加密</dd>
<dt><code>-p</code></dt>
<dd>纯文本(<em>不推荐</em>)</dd>
</dl>
<h3><a name="options.commands" id="options.commands">命令</a></h3>
<dl>
<dt><code>add</code></dt>
<dd>在<var>filename</var>中增加一个包含了<var>username</var>和已加密密码<var>encpasswd</var>的项。
<div class="example"><p><code>dbmmanage passwords.dat add rbowen foKntnEF3KSXA</code></p></div>
</dd>
<dt><code>adduser</code></dt>
<dd>要求输入密码,然后在<var>filename</var>中增加一个<var>username</var>项。
<div class="example"><p><code>dbmmanage passwords.dat adduser krietz</code></p></div>
</dd>
<dt><code>check</code></dt>
<dd>要求输入密码,然后检查<var>filename</var>中是否存在<var>username</var>并且其密码与输入的相同。
<div class="example"><p><code>dbmmanage passwords.dat check rbowen</code></p></div>
</dd>
<dt><code>delete</code></dt>
<dd>在<var>filename</var>中删除<var>username</var>项。
<div class="example"><p><code>dbmmanage passwords.dat delete rbowen</code></p></div>
</dd>
<dt><code>import</code></dt>
<dd>从<code>STDIN</code>读取 <code><var>username</var>:<var>password</var></code> 的信息(每行一对),然后增加到<var>filename</var>中。其中的密码必须是已加密的。</dd>
<dt><code>update</code></dt>
<dd>类似<code>adduser</code>命令,但是它可以确认<var>username</var>已经存在于<var>filename</var>中。
<div class="example"><p><code>dbmmanage passwords.dat update rbowen</code></p></div>
</dd>
<dt><code>view</code></dt>
<dd>仅显示DBM文件的内容。如果指定了<var>username</var>则仅显示该用户的信息。
<div class="example"><p><code>dbmmanage passwords.dat view</code></p></div>
</dd>
</dl>
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
<div class="section">
<h2><a name="bugs" id="bugs">Bugs</a></h2>
<p>注意,实际上存在有许多不同的DBM文件格式,你的系统中也可能存在不止一种的支持库,常见的有SDBM, NDBM, GDBM, Berkeley DB 2 。麻烦的是,所有这些库都使用了不同的文件格式,因而你必须确保<var>filename</var>所采用的格式能够为<code>dbmmanage</code>所接受。目前,<code>dbmmanage</code>无法自己确定所查找的文件的DBM类型。如果使用了错误的格式,则简单返回nothing ,或者建立一个不同名称的不同的DBM文件,而最坏的情况是,在试图写入这个文件时,可能会破坏该DBM文件。</p>
<p><code>dbmmanage</code>有一个DBM格式参数选择列表,在程序前部由 <code>@AnyDBM::ISA</code> 数组定义。由于我们更喜欢 Berkeley DB 2 格式,<code>dbmmanage</code>查找系统库的顺序是:Berkeley DB 2, NDBM, GDBM, SDBM 。<code>dbmmanage</code>会使用第一个找到的库来处理所有的DBM文件操作。此顺序与perl中标准的 <code>@AnyDBM::ISA</code> 的顺序略微不同,所以,如果要使用任何其他工具来管理DBM文件,则必须确保该工具是按此顺序处理的。在用其他语言比如C的程序来处理这些文件时,也要考虑这一点。</p>
<p>在大多数Unix系统中,都可以用<code>file</code>程序来查看DBM文件的格式。</p>
</div></div>
<div id="footer">
<p class="apache">本文允许自由使用、分发、转载,但必须保留译者署名;详见:<a href="../translator_announcement.html#announcement">译者声明</a>。</p>
<p class="menu"><a href="../mod/index.html">模块索引</a> | <a href="../mod/directives.html">指令索引</a> | <a href="../faq/index.html">常见问题</a> | <a href="../glossary.html">词汇表</a> | <a href="../sitemap.html">站点导航</a></p></div>
</body></html>
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -