ブログ
BLOG
こんにちは、今回はWEBサイトへ認証設定を設置する為の「Basic認証」を紹介したいと思います。
「Basic認証」は主に指定のページを特定の方のみに閲覧できるようしたいという時に使用されます。
wordpressを使用している場合は別ですがhtml管理しているサイトに限っては簡単に実装が可能な為、是非ご参考にしていただければ幸いです。
目次
1.「Basic認証」とは?
Basic認証とはWEBサイト上で利用できる認証システムの1つです。
Basic認証が設定されているページへアクセスすると、ポップアップが表示され、そこに指定のIDとpasswordを入力することでそのページの内容が表示され、閲覧できる仕様のものとなります。
リダイヤル機能を利用する際にも使用する「.htaccess」を利用して設定できる、という非常に簡単な認証機能となっております。
また、指定したディレクトリに含めれる全てのページが同様に扱われるため、実装の際は、気を付けなければいけません。
2.「Basic認証」の設定方法
①実装したいディレクトリのフルパスを調べる
まずは、「.htaccess」に記述するためのフルパスを調べます。
そのためには、下記内容のみを入れたphpファイルを1つ用意し、実装したいディレクトリに入れます。
phpのファイル名は何でも問題ないため、ここではtest.phpとします。
入れた後、その該当ページのtest.php「(例)https://sample/aaa/test.php」にアクセスすることで下記のようなフルパスが表示されます。
(例)/home/sample/aaa/test.php
※契約しているサーバーによってフルパスの内容は異なります
フルパスを調べ終えたら、test.phpはきちんと削除しておきましょう。
外部からアクセスされた際にフルパスの情報が漏れてしまう可能性もあるため、ここは必ず行います。
②「.htaccess」を作成する
「.htaccess」を用意し下記内容を入れます。
AuthUserFileの部分に①で調べたフルパスを入れます。
③「.htpasswd」を作成する
ここではIDとPasswordを格納するための「.htpasswd」を作成します。
今回は例として、IDを「user」、Passwordを「password」にします。
次に決めたPasswordを暗号化する処理を行います。
暗号化を行わず「.htpasswd」の中身を「user:password」にして行ってもベーシック認証は正しく動かないため、必ず暗号化を行います。
暗号化するためのサイトとして今回は「htpasswd file generation」をご紹介します。
htpasswd file generation
https://www.luft.co.jp/cgi/htpasswd.php
指定のIDとPASSを入力し「生成」ボタンをクリックする事で「.htpasswd:」の右側に暗号化されたテキストが表示されます。
「.htpasswd」の中に暗号化されたテキストを張り付けて「.htpasswd」も完成になり、指定のディレクトリに「.htaccess」「.htpasswd」を入れれば完了です。
必ず最後にきちんと指定のIDとPASSで入れるかどうかも確認してください。
内容自体は問題ないのに何故かログインできず苦戦したことが自分も何度もあります(汗)
結局契約しているサーバーの問題なのか、サーバーのコントロールパネルから直接ベーシック認証を設定したら正しく動いたので、もし今回紹介させて頂いた内容で正しく動かない場合は、サーバーのコントロールパネルから直接作業されるのも1つの方法です。
3.まとめ
いかがでしたでしょうか。
今回紹介させていただいたBasic認証はそれほど頻繁に使用するものでもないのですが、たまに依頼が来た際に自分自身も忘れないよう紹介させていただきました。
少しでもお役に立つものがあったらうれしいです。
担当:Y
愛知県内から名古屋市を中心にホームページ制作を行っている会社
株式会社 WWG(ダブルダブルジー)
愛知県 名古屋市中村区名駅5-16-17 花車ビル南館5F
TEL: 052-890-7007(2021-12/16~変更)
※ ホームページ制作や活用サポートのお問い合わせはコチラから