BASIC認証は、特定のユーザーだけがアクセス可能なページを簡単に公開する手法です。
更新日:
今回はホームページの特定のページを特定の人だけが見れるようにする方法について説明します。
これは、例えば、会員限定のコンテンツや、内部向けの情報を公開する際に非常に役立ちます。
その方法の一つとして「BASIC認証」があります。
この記事では、BASIC認証の設定方法とその特性について解説します。
また、BASIC認証の適用例や、その他の認証方法との比較についても触れていきます。
BASIC認証とは?
BASIC認証とは、HTTPに元々用意されている認証機能の一つで、IDとパスワードを用いて認証します。
具体的な手順としては、特定の内容を書いた「.htaccess」という名前のファイルをフォルダの中に置くことで、そのフォルダの中のファイルを見ようとすると「IDとパスワードを入れてね」という認証画面が表示されます。
BASIC認証の設定方法
BASIC認証の設定は、以下の手順で行います。
- 「.htaccess」という名前のファイルを作成します。
- そのファイルに以下の内容を記述します。
AuthType Basic
AuthName "認証が必要です"
AuthUserFile /path/to/.htpasswd
require valid-user
「.htpasswd」という名前のファイルを作成し、その中にユーザー名とパスワードを記述します。
パスワードは暗号化して記述する必要があります。
「.htpasswd」の暗号化
「.htpasswd」ファイルのパスワードは、Apacheの htpasswd コマンドを使って暗号化することが一般的です。
以下にその手順を示します。
- ターミナルを開きます。
- 次に、以下のコマンドを実行します。
ここで、`username` はあなたが設定したいユーザー名、`/path/to/.htpasswd` は .htpasswd ファイルのフルパスを指定します。
htpasswd -c /path/to/.htpasswd username - コマンドを実行すると、新しいパスワードとその確認のための再入力を求められます。
入力すると、指定したパスに「.htpasswd」ファイルが作成され、その中にユーザー名と暗号化されたパスワードが保存されます。
このコマンドは -c オプションをつけて実行すると新規作成、つけないと既存のファイルに追記する形になります。
複数のユーザーを設定したい場合は -c オプションを省略して同様のコマンドを実行します。
なお、この方法はApacheがインストールされているサーバー上で行う必要があります。
セキュリティを強化するために、パスワードは複雑なものにすることをお勧めします。
さくらのレンタルサーバーの場合
- まず、「サーバーコントロールパネル」にログインします。
- 「Webサイト/データ」から「ファイルマネージャー」を選択します。
- ファイルマネージャーの画面が表示されたら、左側のフォルダツリーからパスワードを設定したいフォルダを選択します。
- 上部メニューの「表示アドレスへの操作」をクリックし、「アクセス設定」を選択します。
- アクセス設定画面が表示されたら、「パスワード制限」タブの「パスワード制限を使用する」チェックボックスをクリックし、チェックを入れます。
- 「接続元アクセス制限との併用」項目で、どちらかを選択します。両方の許可がないとアクセス不能にするか、一方の許可があればアクセス可能にするかを選びます。
- 「パスワードファイル」項目の「編集」ボタンをクリックします。
- パスワードファイルの編集画面が表示されたら、「追加」ボタンをクリックします。
- ユーザの追加画面が表示されたら、「ユーザ名」「パスワード」「パスワード(確認)」を入力し、「OK」ボタンをクリックします。
- ユーザ一覧に新しいユーザが追加されたら、「OK」ボタンをクリックします。
- 最後に、アクセス設定画面の「OK」ボタンをクリックします。
以上の手順で、さくらのレンタルサーバーでBASIC認証の設定を行うことができます。
設定が完了したら、パスワードをかけたURLにアクセスし、ユーザ名とパスワードを入力するダイアログが表示されるか確認してください。
エックスサーバーの場合
- 「サーバーパネル」にログインし、「アクセス制限」をクリックします。
- アクセス制限をかけたいフォルダ名をクリックし、「現在のURL」がアクセス制限をかけたいURLになっているか確認します。
間違いがなければ、アクセス制限を追加したいフォルダの設定を「ON」に変更し、「設定する」をクリックします。
アクセス制限が設定されたフォルダには鍵マークがつき、現在の状態が「OFF」から「ON」に変わります。 - アクセス制限を「ON」にしたフォルダの「ユーザー設定」をクリックします。
- ユーザーIDとパスワードを入力し、「確認画面へ進む」をクリックします。
内容を確認し、問題がなければ「追加する」をクリックします。
以上の手順で、エックスサーバーでBASIC認証の設定を行うことができます。
設定が完了したら、パスワードをかけたURLにアクセスし、ユーザ名とパスワードを入力するダイアログが表示されるか確認してください。
ロリポップ!レンタルサーバーの場合
- ロリポップ!の「ユーザー専用ページ」にログインし、「アクセス制限」を開きます。
- 「新規作成」をクリックします。
- 「.htaccess設置ディレクトリ」にアクセス制限を設定するページのパスを入力します。
- 「認証フォームのタイトル」を設定します。
- 各ユーザーの「アカウント名」と「パスワード」を設定します。最大10ユーザーまで登録できます。
- 独自ドメインを設定している場合、「設定したドメインのディレクトリから入力できます。」をクリックし、設定します。
- 設定が完了したら、「作成」をクリックします。
以上の手順で、ロリポップ!レンタルサーバーでBASIC認証の設定を行うことができます。
設定が完了したら、パスワードをかけたURLにアクセスし、ユーザ名とパスワードを入力するダイアログが表示されるか確認してください。
BASIC認証の特性
BASIC認証の最大の特性は、その設定の手軽さです。
ただし、その一方で、セキュリティの強さが特性となります。
「ベーシック」という名前が示す通り、機能としては必要最低限で、セキュリティ的には弱いです。
そのため、本格的に認証をかけたいときにはあまり使われません。
BASIC認証の適用例
BASIC認証は、特定の人だけに情報を公開したいというニーズがある場合に有効な手段となります。
例えば、社内のみで共有したい情報がある場合や、テスト環境を一部の人だけに公開したい場合などに利用できます。
また、一時的に特定のユーザーだけにアクセスを許可したいときにも、手軽に設定できるため便利です。
BASIC認証とその他の認証方法との比較
BASIC認証は、その設定の手軽さから一部のケースで利用されますが、セキュリティの観点からは他の認証方法と比較して劣る部分があります。
例えば、OAuthやOpenID Connectなどの認証フレームワークは、より強固なセキュリティを提供しますが、設定が複雑であるというデメリットがあります。
そのため、適切な認証方法を選択する際には、セキュリティの要件と設定の手間を考慮する必要があります。
まとめ
BASIC認証は、特定のページを特定の人だけが見れるようにするための手段の一つです。
設定は比較的簡単に行うことができますが、セキュリティの強さは必要最低限という点を理解しておく必要があります。
それでも、特定の人だけに情報を公開したいというニーズがある場合には、BASIC認証は有効な手段となります。
しかし、より強固なセキュリティが必要な場合には、他の認証方法を検討することをお勧めします。
検索ボックスへキーワードを入力してください