ダイジェスト認証について


Apache等でDigest認証するためのユーザ情報ファイルを作るためのhtdigestコマンドについて教えてください。

htpasswdコマンドと同じような書式で使えたように記憶していたのですが、先日、使ってみたら、怒られました。

# htdigest /etc/httpd/.htdigest hina1981
Usage: htdigest [-c] passwordfile realm username

この書式の中で、「realm」(レルム?)とは何なのでしょうか?

いろいろ調べてみたのですが、
・AuthNameに書くための文字を指定(?)
・Apacheではなく、lighttpdだと何かの意味を持つ(?)
等の仮説はいろいろ出てきたのですが、結局、何のための指定なのかがよくわかりません。

htpasswdにはなくて、htdigestにだけあるということは、ベーシック認証とダイジェスト認証の違い(暗号化とか)と関連あるのでしょうか?

使っているディストリビューションは:
CentOS4.3です。

詳しい方、どうぞよろしくお願いいたします。

回答の条件
  • 1人3回まで
  • 登録:2007/07/30 11:20:55
  • 終了:2007/08/04 21:56:28

回答(1件)

id:Yota No.1

Yota回答回数453ベストアンサー獲得回数282007/07/30 12:15:56

ポイント60pt

http://httpd.apache.org/docs/2.0/ja/programs/htdigest.html

The realm name to which the user name belongs.

(ユーザ名が属する領域名)

と書いてあります。

ログインするとき小窓に表示されます。何でもいいです。

Basic認証だと、認証を必要とするディレクトリごとに別々のpasswordfileがいります。

Digest認証では、ディレクトリ名をrealmにすれば、ひとつのpasswordfileで複数のディレクトリに対する認証情報を管理することができる。

ちょっと手間が省ける。

id:hina1981

ありがとうございます。

2007/08/04 21:56:16
  • id:kn1967
    [http://httpd.apache.org/docs/2.0/ja/howto/auth.html:title]
    >>
    例えば、"Restricted Files" 領域中で 一度認証されれば、同一サーバ上で "Restricted Files" Realm としてマークされたどんな領域でも、クライアントは 自動的に同じパスワードを使おうと試みます。 このおかげで、複数の制限領域に同じ realm を共有させて、 ユーザがパスワードを何度も要求される事態を 防ぐことができます。もちろん、セキュリティ上の理由から、 サーバのホスト名が変わればいつでも必ず、 クライアントは再びパスワードを尋ねる必要があります。
    <<
    AuthName は「認証(Auth)対象とする領域(realm)の名前(name)」を指定するためのもので
    役割としてはBasic認証でもDigest認証でも同じということで
    1の回答は誤りですが「ディレクトリ名をrealmにすれば...」という部分も辻褄が合いませんので
    補足がある事を期待しましょうか・・・


    本題の「htpasswd では realm は聞かれないのに htdigestでは realm・・・」の理由が判りませんので
    他人の投稿へのケチだけになってしまいますが
    あまりにも理解不足な回答に見受けられましたのでコメントさせていただきました。

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません