Spec-Zone.ru › Apache HTTP Server

Модуль Apache mod_authz_dbm

Описание: Авторизация по группам с использованием файлов DBM
Статус: Расширение
Идентификатор модуля: authz_dbm_module
Исходный файл: mod_authz_dbm.c
Совместимость: Доступен в Apache 2.1 и более поздних версиях

Краткое описание

Этот модуль предоставляет средства авторизации, позволяющие предоставлять или запрещать аутентифицированным пользователям доступ к разделам веб-сайта в зависимости от их принадлежности к группам. Аналогичные возможности предоставляет mod_authz_groupfile.

Директивы Require

Директивы Require Apache используются на этапе авторизации, чтобы убедиться, что пользователю разрешен доступ к ресурсу. mod_authz_dbm расширяет типы авторизации директивой dbm-group.

Начиная с версии 2.4.8, в директивах DBM require поддерживаются выражения.

Require dbm-group

Эта директива задает членство в группе, необходимое пользователю для получения доступа.

Require dbm-group admin

Require dbm-file-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

Описание: Задает имя файла базы данных, содержащего список групп пользователей для авторизации
Синтаксис:
AuthDBMGroupFile file-path
Контекст: directory, .htaccess
Переопределение: AuthConfig
Статус: Расширение
Модуль: mod_authz_dbm

Директива AuthDBMGroupFile задает имя файла DBM, содержащего список групп пользователей для авторизации. Путь к файлу — абсолютный путь к файлу групп.

В файле групп ключом является имя пользователя. Значение для пользователя представляет собой разделенный запятыми список групп, в которые он входит. Значение не должно содержать пробелов и ни в коем случае не должно содержать двоеточий.

Безопасность

Убедитесь, что AuthDBMGroupFile хранится вне дерева документов веб-сервера. Не помещайте его в каталог, который он защищает. В противном случае клиенты смогут скачать AuthDBMGroupFile, если он не защищен иным способом.

Объединение файлов DBM с группами и паролями. В некоторых случаях удобнее управлять одной базой данных, содержащей сведения о паролях и группах каждого пользователя. Это упрощает работу вспомогательных программ: им нужно только записывать данные в один файл DBM и блокировать его. Для этого сначала задайте одинаковый файл DBM для групп и паролей:

AuthDBMGroupFile "/www/userbase"
AuthDBMUserFile "/www/userbase"

Ключом для единого файла DBM является имя пользователя. Значение состоит из

Encrypted Password : List of Groups [ : (ignored) ]

Раздел пароля, как и прежде, содержит зашифрованный пароль. За ним следует двоеточие и разделенный запятыми список групп. После еще одного двоеточия в файле DBM можно оставить дополнительные данные; модуль авторизации их игнорирует. Именно такой объединенной базой данных паролей и групп пользуется www.telescope.org.

Директива AuthzDBMType

Описание: Задает тип файла базы данных, используемого для хранения списка групп пользователей
Синтаксис:
AuthzDBMType default|SDBM|GDBM|NDBM|DB
По умолчанию:
AuthzDBMType default
Контекст: directory, .htaccess
Переопределение: AuthConfig
Статус: Расширение
Модуль: mod_authz_dbm

Задает тип файла базы данных, используемого для хранения списка групп пользователей. Тип базы данных по умолчанию определяется во время компиляции. Доступность других типов файлов баз данных также зависит от параметров компиляции.

Крайне важно, чтобы программа, используемая для создания файлов групп, была настроена на тот же тип базы данных.

© 2018 The Apache Software Foundation
Licensed under the Apache License, Version 2.0.
https://httpd.apache.org/docs/2.4/en/mod/mod_authz_dbm.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API