Webサイトのユーザ認証

Webサイトにパスワードを掛けて、特定の人しか見られないようにするには……
 特定のページを開く際に、ユーザ名とパスワードを入力するボックスを表示し、ユーザ名とパスワードの組み合わせが正しい場合のみ、そのページを表示できるようにするBasic認証(UNIX認証)の利用方法を紹介します。


  1. パスワードの発行
     まず、アクセスを許可するユーザ名とパスワードの組み合わせを記述したファイルを用意する必要があります。そのためには、まずパスワードを、暗号化する必要があります。以下のフォームに、ユーザ名とパスワードを入力して、「暗号化」ボタンを押して下さい。暗号化されたパスワードが表示されます。

    ユーザ名  
    パスワード 
    パスワード (確認のためもう一度)

     

     例えば、ユーザ名guest、パスワードhimichuを上のフォームに入力し、暗号化パスワードがh6T33Ji0tg98aU930と出力されたら、.htpasswdというファイルをメモ帳などのテキストエディタ(Windowsの場合)で作成し、

    .htpasswdをメモ帳で編集

     このように編集し、保存します(これは、guestというユーザに加えて、userというユーザにも、アクセスを許可する場合です。許可するユーザが1人の場合には、1行だけで結構です。複数人に許可する場合は、許可するユーザ名とパスワードの組み合わせを記述した行を追加していきます)。行の終わりは必ず改行して下さい。なお、メモ帳で.htpasswdというファイルを保存する場合には、「名前を付けて保存」を選択した後、「ファイルの種類」を「すべてのファイル」に指定した上で、.htpasswdというファイル名を付けて下さい(ファイルの内容は全て半角英数で入力し、大文字と小文字の区別を間違えないようにしましょう)。

  2. .htaccessファイルの書き方
     次に、以下のような内容のファイルをテキストエディタで作成し、.htaccessという名前で保存して下さい。

    .htaccessをメモ帳で編集

    AuthType Basic AuthName "Password is required to enter this page." AuthUserFile /home/ftp/FTPユーザ名/pass/.htpasswd AuthGroupFile /dev/null <limit GET POST> require valid-user </limit>

     FTPユーザ名には自分のユーザ名を、pass以下は.htpasswdを置いたディレクトリ名を記述します。例えば、上記の例は、passというディレクトリをルートに作成し、その中に.htpasswdを置いたものです。

  3. アクセス制限するディレクトリを決定
     ここまでの作業で、.htpasswdと.htaccessという2つのファイルができあがりました。いよいよアクセス制限するディレクトリを決定します。これまでの例では、.htpasswdは、passというディレクトリ(home/ftp/FTPユーザ名/pass)に入れています。これは、自分の好きなところに設置して下さい。
     .htaccessを設置した場所が、アクセス制限するディレクトリになります。例えば、himituというディレクトリにアクセス制限をかけたい場合、himituディレクトリを作成し、その中に.htaccessをFTPによってアップロードします。そうすることによって、himituディレクトリの中にあるファイルやディレクトリは、ユーザ名とパスワードを入力しなければ、ダウンロードや閲覧することができなくなります。

ウェルカムページへ戻る