Apache HTTP Server 版本 2.4
描述 | 使用 DBM 文件进行用户身份验证 |
---|---|
状态 | 扩展 |
模块标识符 | authn_dbm_module |
源文件 | mod_authn_dbm.c |
兼容性 | 在 Apache 2.1 及更高版本中可用 |
此模块为身份验证前端(例如 mod_auth_digest
和 mod_auth_basic
)提供支持,通过在 dbm 密码文件中查找用户来进行身份验证。 mod_authn_file
提供了类似的功能。
当使用 mod_auth_basic
或 mod_auth_digest
时,此模块通过 AuthBasicProvider
或 AuthDigestProvider
使用 dbm
值进行调用。
描述 | 设置用于存储密码的数据库文件类型 |
---|---|
语法 | AuthDBMType default|SDBM|GDBM|NDBM|DB |
默认值 | AuthDBMType default |
上下文 | 目录,.htaccess |
覆盖 | AuthConfig |
状态 | 扩展 |
模块 | mod_authn_dbm |
设置用于存储密码的数据库文件类型。默认数据库类型在编译时确定。其他类型数据库文件的可用性也取决于 编译时设置。
例如,为了启用对 Berkeley DB(对应于 db
类型)的支持,需要在 httpd 的配置中添加 --with-berkeley-db
选项以生成必要的 DSO。
至关重要的是,您用来创建密码文件的任何程序都必须配置为使用相同类型的数据库。
描述 | 设置包含用户列表和密码的数据库文件的名称,用于身份验证 |
---|---|
语法 | AuthDBMUserFile 文件路径 |
上下文 | 目录,.htaccess |
覆盖 | AuthConfig |
状态 | 扩展 |
模块 | mod_authn_dbm |
AuthDBMUserFile
指令设置包含用户列表和密码的 DBM 文件的名称,用于用户身份验证。 文件路径 是用户文件的绝对路径。
用户文件以用户名为键。用户的 value 是加密的密码,后面可以 optionally 跟着一个冒号和任意数据。冒号及其后面的数据将被服务器忽略。
确保 AuthDBMUserFile
存储在 Web 服务器的文档树之外;不要将其放在它保护的目录中。否则,客户端将能够下载 AuthDBMUserFile
。
加密的密码格式取决于正在使用的身份验证前端(例如 mod_auth_basic
或 mod_auth_digest
)。有关更多信息,请参见 密码格式。
重要的兼容性说明:Apache 模块中 dbmopen
的实现从 DBM 数据结构中读取散列值的字符串长度,而不是依赖于字符串以 NULL 结尾。某些应用程序(例如 Netscape Web 服务器)依赖于字符串以 NULL 结尾,因此如果您在应用程序之间使用 DBM 文件时遇到问题,这可能是问题的一部分。
Apache 附带一个名为 dbmmanage
的 Perl 脚本。此程序可用于创建和更新 DBM 格式的密码文件,以供此模块使用。另一个用于维护 DBM 文件的工具是包含的程序 htdbm
。