全1641文字
PR

 ユーザーアカウント(以下、アカウント)は、サーバーやサービスにログインするユーザーの単位を表す概念だ。パスワードを使うユーザー認証では、個々のアカウントは1組のIDとパスワードで構成される。

 ユーザー認証を行うなら、アカウントに関する理解は欠かせない。このパートでは、アカウントをどのように管理すればいいかを見ていこう。

 アカウントは通常、サーバー側に登録する。例えば、Webサーバーの最も原始的な認証方式である「Basic認証」では、すべてのユーザーのIDとパスワードを列記した設定ファイルを用意し、サーバーに保存することで登録が完了する。

 複数のサーバーが存在する場合は、それぞれのサーバーに設定ファイルを保存しなければならない(図1)。例えば、5人のユーザーがいて3台のサーバーがある場合、延べ15人分のアカウントを登録する必要がある。ユーザーの人数やサーバーの台数が増えれば、登録しなければならないアカウントの数は膨大になってしまう。また、ユーザーの追加や削除、ユーザー情報の変更などがある場合は、すべてのサーバーに対して同じ変更を行わなければならず、大変な手間がかかる。

図1●ディレクトリーサービスでユーザーを一元管理
図1●ディレクトリーサービスでユーザーを一元管理
ディレクトリーサービスを使わない場合はサーバーごとにアクセスを許可する。そのため、ユーザー管理が煩雑になる。ディレクトリーサービスを利用すればユーザーを一元管理できる。
[画像のクリックで拡大表示]

 この問題を解決するのが「ディレクトリーサービス」だ。ディレクトリーサーバーという専用のサーバーでアカウントを一元管理する。ユーザー認証もこのサーバーが担当する。ユーザーがアクセスするサーバーが何台あっても、ディレクトリーサーバーにユーザー数分のアカウントを登録するだけでいい。ユーザーの追加や削除、ユーザー情報の変更も、ディレクトリーサーバーに対して実施するだけで済む。

 代表的なディレクトリーサービスがWindowsの「Active Directory」である。Linuxなどでは「OpenLDAP」というオープンソースのソフトウエアでディレクトリーサービスを実現できる。

▼Basic認証
IDとパスワードを平文で通信するためセキュリティー面で問題があり、現在ではほとんど使われていない。
▼OpenLDAP
LDAPはLightweight Directory Access Protocolの略。ディレクトリーサービスへのアクセスに使うプロトコル。