■ ディレクトリ
おね~さんと、
ほげたんのっ!!
3 Minutes Networking、
Supplement !!
え~っと。今回からは新しい話で。
ディレクトリサービスについて話をしたいな、と。
ディレクトリってあのディレクトリ?
どのディレクトリ?
あれ。
うん、そう。そのディレクトリ。
そっかー、あのディレクトリか……、いや、おね~さん? この受け答えはないでしょ?
ん? そう? 楽でよかったのに。
で、ほげたん、どのディレクトリよ?
ほら、ファイルシステムで使う…、Windowsだと「フォルダ」って呼ぶけど、そのディレクトリ。
うん。それであってるわよ。
ほげたんの指すディレクトリって何をするもの?
え? え~っと、そうだな~。ディレクトリは、「ファイルを管理して位置を登録するもの」、じゃないかな?
40点ってところかな? ちょっと合格点はあげられないわね。
登録しているのは「位置」だけ? 確かにファイルシステムではディレクトリによりファイルの位置を特定しているけど、それだけなの?
ん~、他になにかあったっけ?
サイズ、作成日時、作成者、使用したアプリケーションなどの情報も登録されてるわよね。
そう言われれば、そうだね。
まとめて言うと、「ファイルシステムでのディレクトリ」って、結局なんなの?
なんなのって…。
「ファイル」の「位置・サイズ・作成日時などの情報」を「管理」するもの?
うんうん。それであってる。
つまり、ディレクトリとは? ファイルって何?
う、う~ん…、データ?
もっと汎用的に?
リソース?
そう。つまりディレクトリとは、リソースの情報を管理するものってことよね。
う、うん。そうなるね。
■ ディレクトリサービス
さて、ディレクトリとは「リソースの情報を管理するもの」だけど。
ディレクトリだけあってもしょうがないわよね。使う人がいないと。
まぁ、そうだよね。
例えば、そうね~、電話帳にしましょう。
電話帳は「人」というリソースの、「電話番号」という情報を管理するディレクトリよね。
そだね。で、僕らはそれを調べるわけだね。
うん、調べるわけだけどね。自力で調べちゃうのはアレだから、ちょっと他の人に頼みましょう。
電話番号だと、「104」かな? ほげたん、104ってなに?
電話番号案内サービス。 ▼ link
うん。それがディレクトリサービス。
うぇ? 104は電話番号を検索してくれるサービスだよ? つまり、ディレクトリを検索してくれるってこと?
そう。
実際は、そのディレクトリの作成も含むことが多いけどね。
ん~ん~ん~、ディレクトリを作成・管理し、その情報を検索して提供するってことでいいのかな?
はい、よくできました。
さて、ディレクトリに登録されるリソースはオブジェクトって呼ばれるわ。
おぶじぇくと。「モノ」だね。
そうね。で、それがディレクトリに登録されたものをエントリ、そしてエントリが持つ情報が属性。

[FigureSP09-01:ディレクトリサービス]
この図だと、オブジェクトとして「人」があって。「人」は「名前」「メールアドレス」「電話番号」という属性を持つエントリとして、ディレクトリに登録されてる、ってことになるわね。
なるほどなるほど。
なんか、オブジェクトとか属性とか言うと、オブジェクト指向っぽいよね。
そうねぇ。オブジェクトがどのようなエントリか決める「クラス」も出てくるから、確かにオブジェクト指向っぽい考え方よね。
だね。
つまりディレクトリサービスとは、属性を指定して、そのエントリを検索したり、エントリを指定して、属性を検索するサービスのこと、ってわけね。
ふむふむ。ディレクトリのエントリ、属性を入手するためのサービスってことだね。
さてさて。ほげたん? ディレクトリサービスってなんで必要なの?
なんでって……なんで?
じゃあ、いくつか例をあげていきましょう。
[FigureSP09-02:ディレクトリサービス・例1]
ははぁ。簡単に必要な情報を入手できる?
そうね。リソースの物理的な配置とは無関係に、容易に情報を検索できることができるわけよ。
あ~、なんかあれだね。Webでのサーチエンジンみたいな役割だね。
そうね。あれもディレクトリサービスだと言えるでしょうね。
他にも、こんな例はどう?
[FigureSP09-03:ディレクトリサービス・例2]
ん、ん~? これって認証サーバの役割じゃないの? っていうか、SSO?
もちろん、認証サーバは必要だけどね。認証サーバだけじゃなくって、アカウント情報を管理する必要があるでしょ? このアカウント情報を管理し、サーバへ権限問い合わせに答えるのがディレクトリサーバ、ってことになるわけ。
ユーザ認証して、権限があるかどうかを調べることができるってことなのかな?
そうね。このディレクトリサーバにより、情報の一元管理が可能になるわけでしょ。それにより肌理の細かい管理や、セキュリティの向上が望めるってことになるわけ。
なるほど。リソースの情報を管理するディレクトリと、ディレクトリサービス。
……?
なに、ほげたん?
うん、あのさ。
これって、「情報を管理する」データベースだよね?
まぁ、そうね。
なんで、データベースって言わずに「ディレクトリ」なの?
ん~。いくつかの点で違いがあるからなんだけど。データベースは、データの追加・更新が頻繁に行われるタイプの情報を扱うことが多いわね。
ディレクトリは?
ディレクトリはどちらかといえば、静的な情報の方ね。あまり更新が行われず、主なトランザクションとしては「検索」が多いタイプ。
あとは、一極集中が主のデータベース。分散が多いディレクトリ。
他には?
そうねぇ、データベースでも多いRDBは「表」だけど、ディレクトリは「木」だったり。
なるほど。
基本的はさっき言った、「動的」なデータベース、「静的」なディレクトリ、という感じでいいんじゃないかしら?
さて、このディレクトリサービス、もちろんファイルシステムでも使用されてるけど。
されてるけど?
ファイルシステムなどローカルな使用だけじゃなく、ディレクトリサーバを置いて、そこへアクセスするっていう方式も使われてるわけ。
特にインターネットで使われてるとインターネットディレクトリなんて呼ばれたりする。
インターネットでディレクトリサービスが行われてる?
もちろん。ほげたんも知ってるわよ。
え?
■ DNSというサービス
それは、DNSよ。
ドメインネームシステム……DNS? DNSがディレクトリサービス?
そうよ。
え、だって? IPアドレスとドメイン名の変換システムが、DNSだよ。
ホストという「オブジェクト」を、DNSのゾーンファイルに「エントリ」し、各エントリは、IPアドレスとドメイン名という「属性」を持ち、リゾルバはそれを「検索」する。はい?
う、うぅぅ。そう考えると確かにディレクトリサービスだ。
でしょ。
DNSの発生理由を考えると、ディレクトリサービスの便利さをちょっとわかってもらえるかな?
発生理由?
昔々、インターネット上、といってもまだホストが百台とかそんな時代だけど。
IPアドレスだけで宛先・送信元を指定するのはまぁ、面倒だってのがあったわけ。
覚えづらいもんね。
そのころどうしてたかといえば、Hostsファイルだったのよ。
インターネットへドメイン名で接続したい各ホストはこれに登録し、それを入手していたの。

[FigureSP09-04:Hostsファイル]
わかると思うけど、この方式、台数が多くなるにつれて破綻したのよ。
うん、わかるよ。Hostsファイルは各クライアントが持っているから、個別にそれぞれ更新をかけなきゃいけない。
そう、一元管理どころの話じゃないわけね。台数が増え、頻繁にHostsファイルが更新されるようになると、もう配布してらんないわけ。
で、生まれたのがDNS。

[FigureSP09-05:DNS]
一元管理されたネームサーバへの問い合わせ、という形に姿を変えたわけね。
なるほど。確かにこっちの方が楽だよね。
そゆこと。
つまり、DNSはディレクトリ&ディレクトリアクセス用プロトコルってことになるのよ。
ディレクトリを構成する規則、ディレクトリへアクセスする規則。
この2つの役割を持ったプロトコルってことだね。
うん。
このプロトコルは他にもあって。それが今回の主役、LDAP。
らいとうぇいとでぃれくとりあくせすぷろとこる。エルダップ。
ってわけで、次回からLDAPの説明をするわよ。
おね~さんと、
ほげたんのっ!!
3分間ネットワーク、
サプリメントでした~~~っ!!
- ディレクトリ
-
[Directory]
「人名録」「指示録」「登録簿」などの意味。
- リソース
-
[Resource]
この場合、「情報資産」の意味。
データ、メモリ、CPUパワー、ハードウェア、プリンタ、ユーザなどのものを示す。
- オブジェクト
- [Object]
- エントリ
- [Entry]
- 属性
- [Property]
- SSO
-
[SingleSignOn]
シングルサインオン。一度の認証で複数のサーバへアクセスが可能になること。代表的なプロトコルとしては、Kerberosがある。Kerberosについては前の回を参照のこと。
- RDB
-
[Relational DataBase]
「関係データベース」とも。
データを「表」の集合という形で表現される。OracleやMicorsoft SQL Serverなどはこの方式。
- Hostsファイル
- IPアドレスとドメイン名の対応を静的に記述するファイル。今でも使われている。Windowsなら%systemroot%\system32\drivers\etcにある。
- LDAP
-
[Lightweight Directory Access Protocol]
読みは「えるだっぷ」。
ほげたんの今日のポイント-
- リソースの情報を管理するのがディレクトリ。
- ディレクトリへの検索を行うサービスがディレクトリサービス。
- 登録されるリソースが「オブジェクト」。
- ディレクトリに登録されたのが「エントリ」。
- 各オブジェクトが持つ情報が「属性」
- ディレクトリサービスにより、リソースの情報の一元管理、検索などが容易に行える。
- DNSもディレクトリサービスの一種。
- 参考リンク
-
- NTT西日本 | 104http://www.ntt-west.co.jp/104/▲

