• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 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 的任何程序都配置为使用相同类型的数据库。