2024.07.19
ChatGPTにクラス名を付けてもらってみた
- コーディング
WEBサイトを限定した人にのみ公開したい時、簡易的にアクセス制限をかける方法として使われるBasic認証(ベーシック認証)。
簡単に制限をかけることができますが、設定にはいくつか注意点があります。
今回はBasic認証の設定方法とその注意点についてご紹介いたします。
目次
まずBasic認証とはWEBサイトのページやファイルに簡易的にアクセス制限をかけることができる認証方法の一つです。
設定をしているページにアクセスをしようとすると、画像のようにユーザー名とパスワードの入力が求められ、正しい情報を入力するとページを見ることができます。
基本的にはBasic認証を設定するための「.htaccess」を設置したディレクトリ以下にある全てのファイル(ページだけでなく画像やPDFなども全て)がBasic認証の対象範囲となります。
Basic認証の対象範囲にあるファイルは検索エンジンやSNSのクローラー(WEBサイトの情報を取得し検索用のデータベースを作成するプログラム)もアクセスができないため、Google等の検索エンジンで検索をしても引っ掛からなくなります。
ほとんどのWEBサーバーではこれからご紹介する方法で設定できますが、レンタルサーバーを使用する場合、サーバー独自のBasic認証を設定することができたり、「.htaccess」を使用できないこともあるため、Basic認証の設定について確認する必要があります。
Basic認証を設定するにはWEBサーバーをディレクトリ単位で制御するためのファイルである「.htaccess」とBasic認証のIDとパスワードを設定するための「.htpasswd」の2つのファイルを使用します。
難しい設定などはなく、メモ帳などのエディタソフトで「.htaccess」というファイル名を付けて保存するだけで作成することができます。
エディタソフトによっては「.」を先頭にしたファイル名をつけることができない場合もあり、その場合には一旦別名で保存し、後からファイル名を「.htaccess」に変更しても問題ありません。
「.htaccess」のファイルを作成し、下記内容を記述します。
AuthUserFile /home/public_html/○○/.htpasswd AuthName "Please enter your ID and password" AuthType Basic require valid-user
■AuthUserFile
Basic認証をかける場所をフルパス(ルートディレクトリ からファイルまでのパス)で設定します。
設定するパスが間違っていると設置をしても設定が効かないため、注意が必要です。
■AuthName
ユーザー名とパスワードの入力を求める画面に表示されるメッセージを設定します。
日本語でも設定はできますが、文字コードによっては文字化けを起こしてしまう可能性もあるため、基本は英語で設定をすることをお勧めします。
■AuthType
認証のタイプを設定します。今回はBasic認証のため、「Basic」に設定します。
■require
認証画面を表示するユーザーを設定します。「valid-user」とはアクセスした全ての人に認証画面を表示させる設定です。
「.htpasswd」のファイルを作成し、下記内容を記述します。
ユーザー名:パスワード ユーザー名:パスワード ユーザー名:パスワード
Basic認証のかかっているページは「.htpasswd」に設定をしたユーザー名とパスワードを入力することで見ることができます。
ユーザー名とパスワードは1つだけではなく、改行し複数設定することも可能です。
ただし、パスワードの設定には注意点があります。
■パスワードは直接入力をしないで暗号化したものを設定する。
Basic認証は暗号化せず直接入力したパスワードでは動作しない仕組みとなっています。
下記参考サイトのようなBasic認証用のパスワードを生成できるツールを使用し、パスワードを暗号化し記述します。
▼参考サイト
https://www.luft.co.jp/cgi/htpasswd.php
■パスワードは8文字以下で設定をする。
デフォルト設定では暗号化する前の状態で先頭8文字しか判定に利用されず、9文字目以降は入力しても無視されてしまいます。
そのため、暗号化する前のパスワードは8文字以内で設定することをお勧めします。
▼参考サイト
http://httpd.apache.org/docs/2.2/programs/htpasswd.html
「.htaccess」と「.htpasswd」の作成ができたら、「.htaccess」で指定をしたBasic認証を設定したいディレクトリ内に2つのファイルをアップロードをします。
アップロードをした瞬間からBasic認証が設定されるため、もしアップロードをしても今まで通りにアクセスできてしまう場合は「.htaccess」の指定が合っているかを確認する必要があります。
簡単に設定することができるので、ぜひご活用ください!
RECOMMEND
株式会社スピカデザイン
渋谷のWEB制作会社「スピカデザイン」の現役コーダー達が、WEB制作のヒントになるような情報をお届けします。
© 2020 spiqa design