ダイジェスト認証とは?#
サイトへのアクセスを限られた人だけに許したい場合はベーシック認証が簡単ですが、ログインアカウントとパスワードが平文で流れてしまいます。この危険性を軽減するために、MD5によってパスワードをハッシュ化して認証するのがダイジェスト認証です。
Apache2.2では、このダイジェスト認証の設定がApache2.0の時とは一部換えられているので注意が必要です。
コンパイル#
Apache2.2でダイジェスト認証を利用するためには以下のモジュールが必要になります。上記のモジュールが有効になっていない場合は、Apacheのエラーログに次のようなメッセージが出力されます。
access to /digest/ failed, reason: verification of user id '<null>' not configured
# ./configure --enable-modules="so auth_digest authn_file authz_user authz_owner" # make # make install
※1: テキストファイルを使用した認証にはauthn_file_moduleが必要であるとマニュアルには確かに書いてありますが、私が試したところこれを指定しなくてもAuthUserFileディレクティブが有効になっていました。勘違い?
パスワードファイルの作成#
認証で使用するパスワードファイルは次のように作成します。日本語で書いた部分はいずれも任意の値を指定できます。2回目以降にユーザを追加する場合は '-c' オプションが不要です。htdigest -c /フォルダ/ファイル名 レルム名 ユーザ名
httpd.confの設定例#
<Directory "/home/www/digest"> AllowOverride None Options Indexes FollowSymLinks Order allow,deny Allow from all AuthType Digest AuthName レルム名 ← htdigestにて指定した値 AuthUserFile "/フォルダ/ファイル名" ← htdigestにて指定した値 (Apache2.0ではAuthDigestFileだった) AuthDigestProvider file Require valid-user # Require user ユーザ名 ← 特定のユーザだけに限定したい場合(htpdigestにて指定した値) </Directory>
添付ファイルの追加
ログイン済のユーザのみが添付ファイルをアップロード出来ます。
«
This particular version was published on 06-5-2011 14:08 by ytp.