パスワード認証によるアクセス制御

Digest認証によるアクセス制御

ユーザファイルの生成

SSHでサーバにログインして次のコマンドを実行します。パスワードの入力を求められるので入力するとユーザファイルが生成されます。

はじめてユーザを作成する時
% htdigest -c /home/username/.htdigest "Members Only" user
New password:
Re-type new password:
2人目以降のユーザを追加する時
% htdigest /home/username/.htdigest "Members Only" user2
New password:
Re-type new password:
htdigest
Digest認証のユーザを作成しパスワードを設定するコマンドです。
-c
ユーザファイルを新規作成するオプションです。2人目以降のユーザを追加する時は使用しません。
/home/username/.htdigest
ユーザファイルの絶対パスです。public_htmlディレクトリの外に置くことをおすすめします。ファイル名は自由に決めることができますが.htで始まる名前にすることをおすすめします。当サービスでは.htで始まるファイルはウェブブラウザで表示できないよう設定されています。
Members Only
認証領域の名前です。任意の文字列を設定してください。.htaccessファイルのAuthNameディレクティブに設定する値になります。
user | user2
作成するユーザ名です。このユーザ名とパスワードで認証します。

.htaccessファイルの設定

Digest認証を有効にするために.htaccessファイルに次のように記述してサーバに設置します。

AuthType Digest
AuthName "Members Only"
AuthUserFile /home/username/.htdigest
Require valid-user

AuthType Digest
認証の種類を指定します。ここではDigestを指定しています。
AuthNameMembers Only
認証領域の名前を指定します。
AuthUserFile /home/username/.htdigest
ユーザファイルの絶対パスを指定します。
Require valid-user
どのユーザにアクセスを許可するかを設定します。valid-userは認証されたユーザを表します。