基本認証って何?
みなさんがあるWebページにアクセスしようとしたときに、
こんな風にアカウントとパスワードを聞かれた経験はありませんか?
これが基本認証です。ベーシック認証と言ったりもします。
FacebookやTwitterなどのログインは、それぞれのアプリケーション自体で設けているログイン機能になりますが、
このようにWebサーバが、自サーバの配下にあるコンテンツに対するアクセスに認証制限を設けることも可能なのです。
アプリケーションでログイン機能を作ったりするよりも簡便なので、手軽な認証制限として現在でも色々な場面で
活用されている手法です。
基本認証の設定をしよう。
ざっと基本認証設定の手順をまとめましょう。
2.パスワードの設定
3.Apacheの再起動
4.基本認証の確認
全体の流れを押さえたところで、個別にみていきましょう。
1.httpd.confの編集
httpd.confはApacheの設定内容を司る最重要ファイルです。
Apacheの設定といったら、大抵このファイルが関わってきますので、
しっかり覚えておきましょう。
1-1.まず、httpd.confファイルを編集するために、viコマンドでファイルを開きます。
(編集前にバックアップをとることを忘れずに。)
1 2 3 | # cd /etc/httpd/conf/ (←httpd.confのあるところまで移動) # cp httpd.conf httpd.conf.bk (←コピーを取る) # vi httpd.conf (←httpd.confを開く) |
1-2.httpd.confに以下を追記します。
一番最後に追記しても構いませんが、「Directory ~」の記述の続いている部分があるので、
その最後尾に配置する方がわかりやすいかと思います。
1 2 3 4 5 6 | <Directory "/var/www/html/test_basicauth" > AuthType Basic AuthName "Au" AuthUserFile "/etc/httpd/conf/.htpasswd" Require user testuser < /Directory > |
AuthType:認証のタイプを意味します。今回は「Basic」つまり基本認証ですね。
AuthName:認証領域を意味します。一度認証が通ると、同一領域内のページはブラウザを閉じるまでは、認証無しで見ることができます。
AuthUserFile:パスワードを格納しているファイルを指定します。
Require:認証を許可するユーザを指定します。「user ユーザ名1 ユーザ名2 ・・・」や「group グループ名1 グループ名2 ・・・」という形で、
複数のユーザやグループを指定することができます。
ユーザの場合、「valid-user」と記述することで、認証が通った全ユーザが許可することもできます。