最近、サーバー開発も始めたので、ユーザー認証方法の一つである、ベーシック認証を実装してみました。実際にやって見るとどんな仕組みなのかもある程度できるし、こんな簡単にできるものなんだなと思いました。
Basic(ベーシック)認証について
ベーシック認証は、下記のサイトによると、ポップアップが表示されて、正しいユーザーIDとパスワードを入力させる認証方法です。
Basic認証とはWeb上で利用できる認証システムです。
Webサイトを運用したことがある人であれば一度は見たことがあるかもしれません。
Basic認証が設定されているページへアクセスすると、ポップアップが表示されます。
そこに前もって設定してあったIDとpasswordを入力することで、ログインすることができます。
簡易的な認証なので、セキュリティレベル的にはあまり高くないため、これだけだと心配ではありますが、
こうゆう認証方法もあるということは認識しておこうと思います。
Basic(ベーシック)認証を特定のページに実装する
特定のページに以下のような実装をすればBasic認証を設定することができます。
<?php //Basic認証 $user = 'user'; $pass = 'pass'; if(isset($_SERVER['PHP_AUTH_USER']) && ($_SERVER["PHP_AUTH_USER"]==$user && $_SERVER["PHP_AUTH_PW"]==$pass)){ print "{$_SERVER['PHP_AUTH_USER']}"; print'さんログイン中<br/>'; print'<br/>'; } else { header("WWW-Authenticate: Basic realm=\"basic\""); header("HTTP/1.0 401 Unauthorized - basic"); echo "<p>Unauthorized</p>"; exit(); } ?>
上記の例の場合、ポップアップで入力されたIDとパスワードが「user」と「pass」の場合、userさんログイン中と表示されます。
間違っている場合はUnauthorizedが表示されるだけで、アクセスしたページを参照できません。