Apache HTTP Server 版本 2.4
dbmmanage
用於建立和更新以 DBM 格式儲存的帳戶名稱與密碼,此檔案用於透過 mod_authn_dbm
來進行 HTTP 使用者的基本驗證。可以使用者帳戶在 dbmmanage
建立的檔案中列出,來限制從 Apache HTTP 伺服器存取的資源。這個程式只能在帳戶名稱儲存在 DBM 檔案中時使用。若要使用平面檔案資料庫,請參閱 htpasswd
。
維護 DBM 密碼資料庫的另一個工具為 htdbm
。
此手冊頁僅列出命令列引數。如需有關必要的指令,設定 httpd
中使用者驗證的詳細資訊,請參閱 httpd 手冊,它包含於 Apache 發行版中,或可以在 https://apache-httpd.dev.org.tw/ 中找到。
dbmmanage [ 編碼 ] 檔名 add|adduser|check|delete|update 使用者名稱 [ encpasswd [ 群組[,群組...] [ 留言 ] ] ]
dbmmanage 檔名 view [ 使用者名稱 ]
dbmmanage 檔名 import
檔名
.db
、.pag
或 .dir
。使用者名稱
使用者名稱
可能不包含冒號(:
)。encpasswd
update
和 add
命令的已雜湊密碼。如果你想要系統提示輸入密碼,但之後再輸入欄位中填寫,你可以使用連字號 (-
)。此外,當使用 update
命令時,句點 (.
) 會保持原始密碼不變。群組
:
)。如果您不想將使用者指派到群組,但要填寫評論欄位時, можете使用連字元 (-
)。此外,當使用 update
指令時,句點 (.
) 會保持原始群組不變。評論
-d
-m
-s
-p
add
dbmmanage passwords.dat add rbowen foKntnEF3KSXA
adduser
dbmmanage passwords.dat adduser krietz
check
dbmmanage passwords.dat check rbowen
delete
dbmmanage passwords.dat delete rbowen
import
STDIN
讀取 username:password
項目 (每行一個) 並將它們新增到 filename。密碼必須已經加密過。update
adduser
指令相同,但它會確保 username 已經存在於 filename 中。dbmmanage passwords.dat update rbowen
view
dbmmanage passwords.dat view
應該知道存在許多不同的 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 檔案採用的格式。