第14回 会員サイトをどう作る?
- #internet
- #HTML
ホームページを構築するときに「会員サイトを作りたい」というご要望が出されることがよくあります。特に会費を徴収している団体様は、「会費を払っているメリットをホームページでも感じていただきたい」と思われるようです。会員ページにはIDとパスワードでログインしないと閲覧できないようにするのです。
「ベーシック認証」について
一番簡単なのは、「ベーシック認証」という、会員ページ全体にひとつのIDとパスワードを設定することです。ベーシック認証がかかっているページにアクセスすると、「ユーザー名」「パスワード」の入力を要求するダイヤログボックスが立ち上がります。
ベーシック認証は一度ログインすれば、ブラウザを閉じるまでの間は再びログインすることなく何度でもアクセスすることができます。また、このパスワードをパソコンに記憶させておけば、パソコンを閉じてもログインなしでの再アクセスが可能となります。(スマホでは記憶させることはできません)
ただし、1つのIDとパスワードしか設定できませんので、会員全員が同じログイン方法を取ることになり、会員を辞めてもIDとパスワードが変わらない限りページを閲覧できることになります。会員が辞めるたびにIDとパスワードを変えることにすると、それを全会員に周知するのが煩雑ですし、変わったことを知らせるメールを見落とした方がいたら、運営側に問い合わせの連絡が来たり、「見れないならもう見ない」と判断されたりなどの現象が起こることになります。
なので、団体様によっては、毎年年頭にベーシック認証のパスワードを変えて、そのパスワードを会報で知らせるという方法をとっているところもあります。
JavaScriptで設定する方法
ベーシック認証よりもう少しバリエーションが作れるのが、JavaScriptによるIDとパスワードの認証です。IDとパスワードの入力欄に入れられた文字からJavaScriptがHTMLを特定しリンクするものです。この方法だとベーシック認証とは違い、たくさんのIDとパスワードを設定することができます。
けれども、リンク先のページ自体にIDとパスワードがかかっているわけではなく、「入り口を制限する」だけなので、直接リンク先のURLを書いてアクセスするとページを見ることができます。それだと検索エンジンにも引っかかって、会員サイトの意味がないですね。なのでこの場合は、リンク先のページに「検索エンジンから探されないようにする」という制限をかけます。
データベースで会員管理をする方法
世の中のほとんどは、データベースを用いて会員管理を行っています。会員のIDとパスワードを記載したデータベースを設置しておき、IDとパスワードが入力されたらそのデータベースを参照し、合っていればページを見ることができるという方法です。
これだと、会員が辞めればそのデータベースからその会員を削除するだけで済みますし、パスワードを忘れた場合に本人が再設定するしくみ(パスワードリマインダー)を搭載することができます。
ID(今はほとんどがメールアドレスがIDとなっていますね)が登録されていなければ、「このIDは登録がありません」と表示し、新規入会を勧めることもできます。
現在は、この方法で設定したパスワードはサイトの管理者も知ることができないしくみとなっており、セキュリティの面でも強固です。が、データベースを構築するのでそれなりのご予算が必要です。お作りになるWEBサイトの性格を考えて、どのレベルの認証システムにするか選択されるとよいと思います。