LDAPとは? anchor.png

LDAPとは、Lightweight Directory Access Protocolの略で、Windowsサーバなどで提供されている、ActiveDirectoryのようなサービスを提供するプロトコルを指します。ていうか、ActiveDirectoryってLDAP使ってるんだよね。で、LDAPを使用してサービスを提供するサーバをLDAPサーバと言います。LDAPサーバとは、一言で言うとデータベースです。MySQLとか、GDBMとか、BerklayDBみたいなもん。Linux等のオープンソースでよく利用されるOpenLDAPは、そのデータベースのバックエンドに様々なツールが選べます。例えばpasswdファイル、MySQLとか、GDBMとか、BerklayDB、他のLDAPサーバ等。データベースのバックエンドをいろいろ選べるメリットは、提供するデータの件数に応じて、検索能力が強力なデータベースを選択できるということですね。

Page Top

なぜLDAPを使うのか? anchor.png

arount, 概念3.PNG さて、まずは左のLDAPのデータ構造図を見てください。LDAPでデータを構築する際は、こういった階層構造を作ります。まずトップレベルはDC(DomainContext)というドメイン名を定義してあげます。このDCは、ルートツリーになるわけですね。個々の例ではExample.comというドメインのデータベースを構築するとします。この下にO(Organaization)やOU(OrganaizationUnit)というサブツリーを定義します。複数の組織があった場合(例えば総務、経理、設計等)や、複数のデータ種別(この図だと、アドレス帳、人のデータ、groupデータ、hostsのデータ等)を階層分けしておきます。階層はいくつでもOKなはず。この下にデータをぶら下げるわけですね。

さて、このデータ、ただぶら下げるにしても、何も考えずにただぶら下げとけばいいのか?それならSQLとかと変わんないじゃん?と思われると思います。ここが大きい特徴ですが、予めスキーマと呼ばれるデータ定義のフォーマットが用意されております。例えばアカウント(account/posixAccount/shadowAccount等)、人物情報(inetOrgPerson)等。で、このスキーマには、このデータにはどういうデータ要素を持っているか(例えばaccountならば、ユーザ名/ユーザID/パスワード等)が予め定義されているので、そのデータ要素を登録しておく、といった具合です。このスキーマは、RFCで定義されている標準スキーマってのがあり、このスキーマに対応しているツールであれば、そのデータを使用していろいろ処理できるってわけですね(例えばLinux認証に使用されるPAMはposixAccountスキーマに対応しているとか)。また、このスキーマは、自分でいろいろ定義を拡張できるので、標準では対応出来ない別データ要素を、スキーマ作ってデータに属性追加する事で拡張出来たりとかがやれるわけです。

Page Top

LDAPを使用して実現したいこと anchor.png

arount, 概念2.PNG 現状はこんな感じ。Linux認証はパスワード、sambaはsmbpasswd、メールはsasldb、Webはapacheのパスワードファイル等、アカウント管理データがいっぱいあって、ほんとにめんどくさい。新しいユーザを登録するときは、adduserして、smbpasswdして、saslpasswd2打って...めんどくさい~!パスワードがアンマッチになったりすると、どれが狂ってるのかわからない…

arount, 概念1.PNG それをこんな感じに。LDAPの統合認証基盤にして、LDAPアカウントデータを一発いじることで、全ての認証基盤が変更されるようにしたい。また、LDAPサーバを各マシンが参照するようにして、LDAPアカウントデータ一発で、全てのマシンの認証データを変更できるようにしたい。(Windowsクライアントマシンは個人別認証でいいと思ってるので、Windowsのドメインコントローラーは使用しないポリシー)

最終的には、メールクライアントのアドレス帳もLDAPで統合しようと思っているので、LDAPによる個人別アドレス帳も作成しようと思ってまっす。Thunderbird対応も真面目に考えてみたいと思ってます。


Front page   Freeze Diff Backup Copy Rename ReloadPrint View   New Page Page list Search Recent changes   Help   RSS of recent changes (RSS 1.0) RSS of recent changes (RSS 2.0) RSS of recent changes (RSS Atom) Powered by xpWiki
Counter: 2606, today: 1, yesterday: 1
Princeps date: 2011-01-05 (Wed) 01:16:11
Last-modified: 2011-01-05 (Wed) 02:15:47 (JST) (3583d) by maruo
ページ内検索

ログイン

ユーザー名:


パスワード:





パスワード紛失

メインメニュー

サブメニュー
自宅鯖計画

Gentoo Linuxな生活

玄箱HGにGentoo格闘記

航空ショーへ行こう

モータースポーツな世界

奥深き写真の世界への誘い

我思う ゆえに我あり



携帯用QRコード