<-
Apache > HTTP Server > 文件 > 版本 2.4 > 程式

dbmmanage - 以 DBM 格式管理使用者驗證檔案

提供的語言:  en  |  fr  |  ko  |  tr 

dbmmanage 用於建立和更新以 DBM 格式儲存的帳戶名稱與密碼,此檔案用於透過 mod_authn_dbm 來進行 HTTP 使用者的基本驗證。可以使用者帳戶在 dbmmanage 建立的檔案中列出,來限制從 Apache HTTP 伺服器存取的資源。這個程式只能在帳戶名稱儲存在 DBM 檔案中時使用。若要使用平面檔案資料庫,請參閱 htpasswd

維護 DBM 密碼資料庫的另一個工具為 htdbm

此手冊頁僅列出命令列引數。如需有關必要的指令,設定 httpd 中使用者驗證的詳細資訊,請參閱 httpd 手冊,它包含於 Apache 發行版中,或可以在 https://apache-httpd.dev.org.tw/ 中找到。

Support Apache!

另請參閱

top

概要

dbmmanage [ 編碼 ] 檔名 add|adduser|check|delete|update 使用者名稱 [ encpasswd [ 群組[,群組...] [ 留言 ] ] ]

dbmmanage 檔名 view [ 使用者名稱 ]

dbmmanage 檔名 import

top

選項

檔名
DBM 格式檔案的檔名。通常沒有副檔名 .db.pag.dir
使用者名稱
執行操作的使用者。使用者名稱 可能不包含冒號(:)。
encpasswd
這是用於 updateadd 命令的已雜湊密碼。如果你想要系統提示輸入密碼,但之後再輸入欄位中填寫,你可以使用連字號 (-)。此外,當使用 update 命令時,句點 (.) 會保持原始密碼不變。
群組
使用者為其成員的群組。群組名稱不能包含冒號 (:)。如果您不想將使用者指派到群組,但要填寫評論欄位時, можете使用連字元 (-)。此外,當使用 update 指令時,句點 (.) 會保持原始群組不變。
評論
這裏是您對使用者進行不透明評論的地方,例如真實姓名、郵件地址或此類資訊。伺服器會忽略此欄位。

編碼

-d
密碼雜湊 (預設,除了在 Win32、Netware 上)
-m
MD5 雜湊 (在 Win32、Netware 上預設)
-s
SHA1 雜湊
-p
純文字 (不建議)

命令

add
使用雜湊密碼 encpasswd,將 username 的項目新增到 filename

dbmmanage passwords.dat add rbowen foKntnEF3KSXA

adduser
詢問密碼,然後將 username 的項目新增到 filename

dbmmanage passwords.dat adduser krietz

check
詢問密碼,然後檢查 filename 中是否有 username,以及它的密碼是否與指定的密碼相符。

dbmmanage passwords.dat check rbowen

delete
filename 中刪除 username 的項目。

dbmmanage passwords.dat delete rbowen

import
STDIN 讀取 username:password 項目 (每行一個) 並將它們新增到 filename。密碼必須已經加密過。
update
adduser 指令相同,但它會確保 username 已經存在於 filename 中。

dbmmanage passwords.dat update rbowen

view
僅顯示 DBM 檔案的內容。如果您指定 username,它只會顯示特定的記錄。

dbmmanage passwords.dat view

top

錯誤

應該知道存在許多不同的 DBM 檔案格式,而且很可能您的系統上存在多種格式的函式庫。三個主要的範例為 SDBM、NDBM、GNU 專案的 GDBM 和 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 檔案交易的函式庫。這個順序與 Perl 中的標準 @AnyDBM::ISA 順序、以及 Perl 中的簡單 dbmopen() 呼叫所使用的順序略有不同,因此,如果你使用任何其他工具來管理 DBM 檔案,它們也必須遵循這個偏好順序。使用其他語言的程式(例如 C)來存取這些檔案時,也必須小心注意。

通常可以使用大多數 Unix 系統隨附的 file 程式來查看 DBM 檔案採用的格式。

提供的語言:  en  |  fr  |  ko  |  tr 

top

留言

注意事項
這不是問答區。寫在這裡的留言應專注於如何改善文件或伺服器的建議,如果留言已被採用或被認為無效/離題,我們的管理員可能會將其移除。關於如何管理 Apache HTTP 伺服器,相關問題應提交至 Libera.chat 上的 IRC 頻道 #httpd,或發送至我們的 寄件清單