Apache HTTP服务器 2.0版本
dbmmanage
建立和更新存储用户名和密码的DBM格式的文件,
用于对HTTP用户进行basic认证。
Apache HTTP服务器上的有效资源可以被限制为由dbmmanage
建立的文件中的用户所访问。
此程序仅用于用户名是存储在一个DBM文件中的情况下,
如果使用文本数据库,请参见htpasswd。
本手册页仅列出命令行参数, 配置httpd用户认证的相关指令的细节请参见httpd手册, 它是Apache发行包的一部分,也可以访问http://httpd.apache.org/.
dbmmanage [ encoding ]
filename add|adduser|check|delete|update
username
[ encpasswd
[ group[,group...]
[ comment ] ] ]
dbmmanage filename
view [ username ]
dbmmanage filename import
filename
.db
, .pag
, or .dir
的后缀。username
:
).encpasswd
update
和add
命令。
使用一个连字号(-
),可以显示输入密码的提示,然后输入。
另外,在用于update
命令时,使用一个句号(.
)可以保持原有密码不变。group
:
)。
如果不希望指定该用户所属的组,可以使用一个连字号(-
),但是需要填写comment。
另外,在用于update
命令时,使用一个句号(.
)可以保持原来所属的组不变。comment
-d
-m
-s
-p
add
adduser
check
delete
import
STDIN
读取username:password
的信息
(每行一对),然后增加到filename中。其中的密码必须是已加密的update
adduser
命令,
但是它可以确认username已经存在于filename中。view
你必须意识到,实际上存在有许多不同的DBM文件格式,
你的系统中也可能存在不止一种的支持库,
常见的有SDBM, NDBM, the GNU project's GDBM, 和Berkeley DB 2。
麻烦的是,所有这些库都使用了不同的文件格式,
因而,你必须确保filename所采用的格式能够为dbmmanage
所接受。
目前,dbmmanage
无法确定所查找的文件的DBM类型。
如果使用了错误的格式,则简单返回nothing,或者建立一个不同名称的不同的DBM文件,
而最坏的情况是,在试图写入这个文件时,可能会破坏该DBM文件。
dbmmanage
有一个DBM格式参数选择列表,
在程序前部由@AnyDBM::ISA
数组定义。
由于我们更喜欢Berkeley DB 2 的格式,
dbmmanage
查找系统库的顺序是Berkeley DB 2, NDBM, GDBM 最后是SDBM。
dbmmanage
会使用第一个找到的库来处理所有的DBM文件操作。
此顺序与perl中标准的@AnyDBM::ISA
的顺序略微不同,
所以,如果要使用任何其他工具来管理DBM文件,则必须确保该工具是按此顺序处理的。
在用其他语言比如C的程序来处理这些文件时,也要考虑这一点。
在大多数Unix系统中,都可以用file
程序来查看DBM文件的格式。