Apache の htpasswd 互換のクラスです。 .htpasswd ファイルを新しく作成することも出来ます。 htpasswd -m (MD5) や -s (SHA) で作成された .htpasswd ファイルには対応していません。
例
require 'webrick' include WEBrick htpd = HTTPAuth::Htpasswd.new('dot.htpasswd') htpd.set_passwd(nil, 'username', 'supersecretpass') htpd.flush htpd2 = HTTPAuth::Htpasswd.new('dot.htpasswd') pass = htpd2.get_passwd(nil, 'username', false) p pass == 'supersecretpass'.crypt(pass[0,2])
new(path) -> WEBrick::HTTPAuth::Htpasswd
[permalink][rdoc]Htpasswd オブジェクトを生成します。
delete_passwd(realm, user) -> String
[permalink][rdoc]ユーザのパスワードを削除します。realm は無視されます。
each {|user, pass| ...} -> Hash
[permalink][rdoc]ユーザ名とパスワードをブロックに与えて評価します。
flush(path = nil)
[permalink][rdoc]ファイルに書き込みます。ファイル名を与えた場合は、そこに書き込みます。
get_passwd(realm, user, reload_db) -> String
[permalink][rdoc]ユーザのパスワードの crypt された文字列を取得します。
reload
[permalink][rdoc]ファイルから再度読み込みます。
set_passwd(realm, user, pass)
[permalink][rdoc]与えられた情報をもとに、パスワードをハッシュ化して保存します。