mod_authz_dbm
描述: | 使用 DBM files 进行组授权 |
状态: | 延期 |
模块标识符: | authz_dbm_module |
源文件: | mod_authz_dbm.c |
兼容性: | 可在 Apache 2.1 及更高版本中使用 |
摘要
此模块提供授权功能,以便允许或拒绝经过身份验证的用户通过 group 成员身份访问 web 站点的某些部分。mod_authz_groupfile提供了类似的功能。
要求指令
在授权阶段使用 Apache 的要求指令,以确保允许用户访问资源。 mod_authz_dbm 使用dbm-group
扩展授权类型。
由于 v2.4.8,在 DBM require 指令中受支持。
要求 dbm-group
该指令指定用户获得访问权所需的 group 成员资格。
Require dbm-group admin
要求 dbm-file-group
指定此伪指令时,用户必须是分配给正在访问的文件的 group 的成员。
Require dbm-file-group
示例用法
请注意,使用 mod_authz_dbm 要求您需要dbm-group
而不是group
:
<Directory "/foo/bar"> AuthType Basic AuthName "Secure Area" AuthBasicProvider dbm AuthDBMUserFile "site/data/users" AuthDBMGroupFile "site/data/users" Require dbm-group admin </Directory>
AuthDBMGroupFile 指令
描述: | 设置包含授权用户组列表的数据库文件的 name |
句法: | AuthDBMGroupFile file-path |
Context: | 目录,.htaccess |
覆盖: | AuthConfig |
状态: | 延期 |
模块: | mod_authz_dbm |
AuthDBMGroupFile
指令设置包含用户授权用户组列表的 DBM 文件的 name。 File-path 是 group 文件的绝对路径。
group 文件以用户名为键。用户的 value 是用户所属组的 comma-separated 列表。 value 中必须没有空格,并且绝不能包含任何冒号。
安全
确保AuthDBMGroupFile
存储在 web-server 的文档树之外。不要**把它放在它保护的目录中。否则,clients 将能够下载AuthDBMGroupFile
,除非另有保护。
组合 Group 和密码 DBM files:在某些情况下,管理单个数据库更容易,该数据库包含每个用户的密码和 group 详细信息。这简化了需要编写的任何支持程序:它们现在只需要处理写入和锁定单个 DBM 文件。这可以通过首先将 group 和密码 files 设置为指向同一个 DBM 来完成:
AuthDBMGroupFile "/www/userbase" AuthDBMUserFile "/www/userbase"
单个 DBM 的 key 是用户名。 value 由
Encrypted Password : List of Groups[:(ignored)]
密码部分包含以前的加密密码。接下来是冒号和逗号分隔的组列表。其他数据可以选择在另一个冒号之后保留在 DBM 文件中;授权模块会忽略它。这是 www.telescope.org 用于其组合密码和 group 数据库的内容。
AuthzDBMType 指令
描述: | 设置用于 store 用户组列表的数据库文件的类型 |
句法: | AuthzDBMType default\|SDBM\|GDBM\|NDBM\|DB |
默认: | AuthzDBMType default |
Context: | 目录,.htaccess |
覆盖: | AuthConfig |
状态: | 延期 |
模块: | mod_authz_dbm |
设置用于存储用户组列表的数据库文件的类型。默认数据库类型在 compile time 确定。其他类型的数据库 files 的可用性也取决于compile-time 设置。
至关重要的是,用于创建 group files 的任何程序都配置为使用相同类型的数据库。