欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

<-
Apache > HTTP Server > 文檔 > 版本2.2 > 支持程序
   致謝 | 譯者聲明 | 本篇譯者:金步國 | 本篇譯稿最后更新:2006年1月13日 | 獲取最新版本

htdbm - 操作DBM密碼數(shù)據(jù)庫

htdbm用于操作由mod_auth_dbm提供的HTTP基本認(rèn)證所使用的保存用戶名和密碼的DBM數(shù)據(jù)庫文件。參見dbmmanage文檔以獲得這些DBM文件的更多信息。

top

語法

htdbm [ -TDBTYPE ] [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] [ -x ] filename username

htdbm -b [ -TDBTYPE ] [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] filename username password

htdbm -n [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] username

htdbm -nb [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] username password

htdbm -v [ -TDBTYPE ] [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] filename username

htdbm -vb [ -TDBTYPE ] [ -c ] [ -m | -d | -p | -s ] [ -t ] [ -v ] filename username password

htdbm -x [ -TDBTYPE ] [ -m | -d | -p | -s ] filename username

htdbm -l [ -TDBTYPE ]

top

選項(xiàng)

-b
使用批處理方式。也就是直接從命令行獲取密碼而不進(jìn)行提醒。使用這個(gè)選項(xiàng)需要特別注意,因?yàn)槊钚兄械拿艽a是清晰可見的。
-c
創(chuàng)建passwdfile文件。如果passwdfile已經(jīng)存在,那么將被清空并改寫。該選項(xiàng)不能和 -n 同時(shí)使用。
-n
在標(biāo)準(zhǔn)輸出上顯示結(jié)果而不是更新數(shù)據(jù)庫。這個(gè)選項(xiàng)改變了命令行語法,因?yàn)?var>passwdfile參數(shù)(通常是第一個(gè))被忽略了。該選項(xiàng)不能和 -c 同時(shí)使用。
-m
使用MD5加密密碼。在Windows, Netware, TPF上這是默認(rèn)方法。
-d
使用crypt()對(duì)密碼進(jìn)行加密。在Windows, Netware, TPF以外的平臺(tái)上這是默認(rèn)方法。雖然有可能在所有的平臺(tái)上被htdbm支持,但是在Windows, Netware, TPF上,該方法不能被httpd所支持。
-s
使用 SHA 對(duì)密碼進(jìn)行加密。這種方法易于通過LDAP目錄交換格式和Netscape server進(jìn)行交換。
-p
使用明文密碼(不加密)。雖然htdbm在所有平臺(tái)上都支持這種方法,但是httpd只能在Windows, Netware, TPF上支持這種方法。
-l
在標(biāo)準(zhǔn)輸出上顯示每一個(gè)用戶名以及對(duì)應(yīng)的注釋。
-t
將最后一個(gè)參數(shù)解釋為注釋。指定這個(gè)選項(xiàng)可以在命令行中添加一個(gè)額外的字符串,這個(gè)字符串可以被存儲(chǔ)在數(shù)據(jù)庫中對(duì)應(yīng)用戶名的"Comment"字段中。
-v
校驗(yàn)用戶名和密碼。程序?qū)?huì)顯示一個(gè)密碼是否正確的信息。如果密碼不正確程序退出時(shí)的錯(cuò)誤代碼將是"3"。
-x
刪除用戶。如果指定的用戶名存在與數(shù)據(jù)庫中,則刪除該用戶。
filename
DBM文件的文件名。通常不包含 .db, .pag, .dir 后綴。如果同時(shí)使用了 -c 選項(xiàng),若DBM文件已存在則更新它,若不存在則創(chuàng)建它。
username
passwdfile中添加或更新記錄。若username不存在則添加一條記錄,若存在則更新其密碼。
password
將要被加密存儲(chǔ)的明文密碼。僅與 -b 一同使用。
-TDBTYPE
DBM文件的類型(SDBM, GDBM, DB, "default")。
top

Bugs

實(shí)際上存在有許多不同的DBM文件格式,你的系統(tǒng)中也可能存在不止一種的支持庫,常見的有SDBM, NDBM, GNU GDBM, Berkeley/Sleepycat DB 2/3/4 。麻煩的是,所有這些庫都使用了不同的文件格式,因而你必須確保filename所采用的格式能夠?yàn)?code>htdbm所接受。目前,htdbm無法自己確定所查找的文件的DBM類型。如果使用了錯(cuò)誤的格式,則簡單返回nothing ,或者建立一個(gè)不同名稱的不同的DBM文件,而最壞的情況是,在試圖寫入這個(gè)文件時(shí),可能會(huì)破壞該DBM文件。

在大多數(shù)Unix系統(tǒng)中,都可以用file程序來查看DBM文件的格式。

top

返回值

htdbm僅在用戶名和密碼被成功存入數(shù)據(jù)庫或成功更新的情況下返回"0"。若訪問文件發(fā)生錯(cuò)誤則返回"1";若命令行語法錯(cuò)誤則返回"2";若密碼驗(yàn)證失敗則返回"3";若正在進(jìn)行中的操作被打斷則返回"4";若值(username, filename, password, 計(jì)算結(jié)果)長度超標(biāo)則返回"5";若用戶名包含非法字符(參見限制)則返回"6";若指定的文件不能被正確識(shí)別則返回"7"。

top

示例

htdbm /usr/local/etc/apache/.htdbm-users jsmith

添加或修改用戶jsmith的密碼。密碼將被提示輸入。在Windows平臺(tái)上,密碼將使用Apache修改過的MD5算法進(jìn)行加密;在其它平臺(tái)上將使用crypt()進(jìn)行加密。如果指定的文件不存在,htdbm將只返回一個(gè)錯(cuò)誤代碼,而不做其它任何事。

htdbm -c /home/doe/public_html/.htdbm jane

創(chuàng)建一個(gè)新文件并在其中添加一條用戶jane的記錄。密碼將被提示輸入。如果文件存在但是不能被讀取或?qū)懭,則不會(huì)有任何記錄被修改,同時(shí)htdbm將會(huì)顯示一個(gè)錯(cuò)誤信息并返回一個(gè)錯(cuò)誤代碼。

htdbm -mb /usr/web/.htdbm-all jones Pwd4Steve

將來自命令行的密碼(Pwd4Steve)使用MD5算法加密,并將其存入指定的文件。

top

安全方面的考慮

Web密碼文件(比如由htdbm管理)不應(yīng)當(dāng)存在于網(wǎng)絡(luò)空間中,即不能被客戶端有機(jī)會(huì)訪問。

我們反對(duì)使用 -b 選項(xiàng),因?yàn)槊艽a將以明文的形式出現(xiàn)在命令行中。

top

限制

在Windows和MPE平臺(tái)上,用htdbm加密的密碼最大長度是255字符。超出部分將被截?cái)唷?/p>

htdbm使用的MD5加密算法已經(jīng)被Apache修改過了,僅能夠被Apache識(shí)別,不能被其它Web服務(wù)器識(shí)別。

用戶最大長度是255字節(jié),并且不能包含冒號(hào)(:)。