BASIC認証について

特定のディレクトリに認証をかける場合、BASIC認証という手法を取ることが多い。
昔は、パスワードファイルを自分で作成してサーバーへアップするという手順を取っていたが、
今ではレンタルサーバーのコントロールパネルから行うことが出来るものがほとんどである。

例えば、Xサーバーの場合、BASIC認証をかけたディレクトリに.htaccessに次の4行が作成、追記、または更新される。
.htaccessファイルはテキストエディタで開くことのできるプレーンテキストである。

AuthUserFile “/home/hoge/moge/htpasswd/.htpasswd”
AuthName “Member Site”
AuthType BASIC
require valid-user

AuthUserFile はパスワードファイルの場所を指す。パスワードは暗号化されてこのファイルに記録される。
AuthName は認証の際に表示される文字列。ブラウザがこの文字列をどう扱うかは任意なのであまり気にしないほうがよい。また、日本語は文字化けすることが多いので半角英字の使用を推奨。
AuthType は認証方式で、BASICの他にDIGEST(ダイジェスト認証)が指定可能。Xサーバーのコントロールパネルでは認証の種類は選択できず、BASIC認証となる。
require valid-user はパスワードファイルに記述されているユーザーすべてが参照可能で、その他にユーザーやグループといった細かい制御ができるようだ。

次に、自動で作成されるパスワードファイルの中身を見てみる。
パスワードファイルもテキストエディタで開くことのできるプレーンテキストである。

admin:$apr1$xxxxxxxx$yyyyyyyyyyyyyy

admin はユーザー名

$apr1は固定

$xxxxxxxx$ 8ケタのSALTが入る。SALTは生成のたびにランダムで生成される。

yyyyyyyyyyyy 桁数は不定。MD5その他のアルゴリズムを組み合わせて作成される。

グループ単位の認証

AuthGroupFile
Xサーバーでは記載されないが、「AuthGroupFile」を使うことでグループ単位での認証が可能になる。

よかったらシェアしてね!

この記事を書いた人

コメント

コメントする

目次
閉じる