ユーザーアカウント(以下、アカウント)は、サーバーやサービスにログインするユーザーの単位を表す概念だ。パスワードを使うユーザー認証では、個々のアカウントは1組のIDとパスワードで構成される。
ユーザー認証を行うなら、アカウントに関する理解は欠かせない。このパートでは、アカウントをどのように管理すればいいかを見ていこう。
アカウントは通常、サーバー側に登録する。例えば、Webサーバーの最も原始的な認証方式である「Basic認証▼」では、すべてのユーザーのIDとパスワードを列記した設定ファイルを用意し、サーバーに保存することで登録が完了する。
複数のサーバーが存在する場合は、それぞれのサーバーに設定ファイルを保存しなければならない(図1)。例えば、5人のユーザーがいて3台のサーバーがある場合、延べ15人分のアカウントを登録する必要がある。ユーザーの人数やサーバーの台数が増えれば、登録しなければならないアカウントの数は膨大になってしまう。また、ユーザーの追加や削除、ユーザー情報の変更などがある場合は、すべてのサーバーに対して同じ変更を行わなければならず、大変な手間がかかる。
この問題を解決するのが「ディレクトリーサービス」だ。ディレクトリーサーバーという専用のサーバーでアカウントを一元管理する。ユーザー認証もこのサーバーが担当する。ユーザーがアクセスするサーバーが何台あっても、ディレクトリーサーバーにユーザー数分のアカウントを登録するだけでいい。ユーザーの追加や削除、ユーザー情報の変更も、ディレクトリーサーバーに対して実施するだけで済む。
代表的なディレクトリーサービスがWindowsの「Active Directory」である。Linuxなどでは「OpenLDAP▼」というオープンソースのソフトウエアでディレクトリーサービスを実現できる。
IDとパスワードを平文で通信するためセキュリティー面で問題があり、現在ではほとんど使われていない。
LDAPはLightweight Directory Access Protocolの略。ディレクトリーサービスへのアクセスに使うプロトコル。