Spec-Zone.ru › Apache HTTP Server

dbmmanage — управление файлами аутентификации пользователей в формате DBM

dbmmanage используется для создания и обновления файлов в формате DBM, предназначенных для хранения имён пользователей и паролей для базовой аутентификации пользователей HTTP с помощью mod_authn_dbm. Доступ к ресурсам сервера Apache HTTP можно ограничить только пользователями, указанными в файлах, созданных с помощью dbmmanage. Эту программу можно использовать только в том случае, если имена пользователей хранятся в файле DBM. Для работы с базой данных в обычном текстовом файле см. htpasswd.

Ещё один инструмент для обслуживания базы данных паролей DBM — htdbm.

На этой странице руководства перечислены только аргументы командной строки. Сведения о директивах, необходимых для настройки аутентификации пользователей в 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
Имя файла в формате DBM. Обычно указывается без расширения .db, .pag или .dir.
username
Пользователь, для которого выполняются операции. Значение username не может содержать двоеточие (:).
encpasswd
Это уже хешированный пароль, используемый командами update и add. Можно указать дефис (-), чтобы ввести пароль по запросу, а затем заполнить остальные поля. Кроме того, при использовании команды update точка (.) позволяет оставить исходный пароль без изменений.
group
Группа, участником которой является пользователь. Имя группы не может содержать двоеточие (:). Можно указать дефис (-), если не нужно назначать пользователя в группу, но требуется заполнить поле комментария. Кроме того, при использовании команды update точка (.) позволяет оставить исходные группы без изменений.
comment
Здесь можно указать произвольные комментарии о пользователе, например его настоящее имя, адрес электронной почты и другие сведения. Сервер игнорирует это поле.

Алгоритмы хеширования

-d
хеширование crypt (по умолчанию, кроме Win32 и Netware)
-m
хеширование MD5 (по умолчанию в Win32 и Netware)
-s
хеширование SHA1
-p
открытый текст (не рекомендуется)

Команды

add
Добавляет в filename запись для username с использованием хешированного пароля encpasswd.
dbmmanage passwords.dat add rbowen foKntnEF3KSXA
adduser
Запрашивает пароль, а затем добавляет в filename запись для username.
dbmmanage passwords.dat adduser krietz
check
Запрашивает пароль, а затем проверяет, содержится ли username в filename и совпадает ли его пароль с указанным.
dbmmanage passwords.dat check rbowen
delete
Удаляет запись username из filename.
dbmmanage passwords.dat delete rbowen
import
Читает записи username:password (по одной в строке) из STDIN и добавляет их в filename. Пароли должны быть предварительно зашифрованы.
update
То же, что и команда adduser, но при этом проверяется, что username уже существует в filename.
dbmmanage passwords.dat update rbowen
view
Выводит содержимое файла DBM. Если указать username, выводится только соответствующая запись.
dbmmanage passwords.dat view

Ошибки

Следует учитывать, что существует несколько различных форматов файлов DBM и, вероятнее всего, в вашей системе установлены библиотеки для нескольких форматов. Основные примеры — SDBM, NDBM, GDBM проекта GNU и Berkeley DB 2. К сожалению, все эти библиотеки используют разные форматы файлов, поэтому необходимо убедиться, что формат файла filename совпадает с форматом, который ожидает dbmmanage. В настоящее время dbmmanage не может определить, с файлом DBM какого типа работает. При использовании с файлом неверного формата программа просто ничего не вернёт или может создать другой файл DBM с другим именем, а в худшем случае — повредить файл DBM, если вы пытались записать в него данные.

В dbmmanage задан список предпочтительных форматов DBM, определённый массивом @AnyDBM::ISA в начале программы. Поскольку предпочтительным является формат Berkeley DB 2, dbmmanage будет искать системные библиотеки в следующем порядке: Berkeley DB 2, затем NDBM, GDBM и SDBM. Первая найденная библиотека будет использоваться dbmmanage для всех операций с файлами DBM. Этот порядок немного отличается от стандартного порядка @AnyDBM::ISA в Perl, а также от порядка, используемого простым вызовом dbmopen() в Perl. Поэтому, если для управления файлами DBM используются другие утилиты, они также должны соблюдать этот порядок предпочтения. Аналогичные меры предосторожности необходимы при обращении к этим файлам из программ на других языках, например на C.

Чтобы определить формат файла DBM, обычно можно воспользоваться программой file, поставляемой с большинством Unix-систем.

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

Spec-Zone.ru

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