レジュメpdf - ECL:電子商取引研究室

平成 17 年 12 月 22 日
ECL 卒研ゼミ関係者各位
近畿大学理工学部情報学科
電子商取引研究室
山本 宜和
LDAP について
1 発表内容
LDAP の調査。
う事ができるようになる。このように LDAP は様々なア
プリケーションをディレクトリシステムを利用してサポー
トする事ができる。その他の利点
• LDAP とは?
• X.500 プロトコルに比べて軽い実装になっている。
• LDAP のデータ構造
• passwd ファイル等のファイルを使ってアカウントの
• OPENLDAP のインストール
認証を行うより高速に LDAP はアカウントの認証を
• LDAP との連携(メールアプリケーション)
行える。
• 研究室での使いみち
• レプリケーション機能
• 参考サイト
• 格納するデーターのタイプを自由に定義、拡張するこ
とができる。
2 LDAP(Lightweight Directory Access
Protocol)とは?
LDAP とはネットワーク上でディレクトリサービスに
• SSL 通信
2.2
• IBM Directory Server
無償で IMB のホームページからダウンロード可能
アクセスするためのプロトコルである。これは一種のデー
タベースサービスである。LDAP は X.500 をベースにし
様々なディレクトレシステムの製品
• SUN ONE Directory Server
ており、X.500 は、1980 年代後半に開発された PC で利用
Sun が Netscape が提供していた Directory Server を
できる最初のオープンなディレクトリのシステムである。
引き継いで提供している。
しかし、X.500 はコンピュータリソースを多く必要とする
• Novell eDirectory
のであまり普及することはなかった。X.500 は OSI(Open
• Active Directory
System Interconnect) ネットワークモデルをベースにし
Windows オペレーティングシステムとの親和性は他
たディレクトリ接続のためのプロトコルだったが、LDAP
ベンダよりも優れている。Microsoft が開発した。
はその X.500 と、TCP/IP ネットワークモデルをベース
• OpenLDAP
としている。現在の主流はバージョン 3 の LDAPV3 であ
最初の LDAP の実装で SLAPD(stand-alone LDAP
る。
daemon) が公開され、拡張が続けられてきて OpenL-
ディレクトリサービスは、ユーザーやファイル、その他の
DAP に引き継がれた。
ネットワーク上の資源をファイル名等のキーによって管
理し一意に識別できるサービスである。現実の世界では電
話帳や図書館の目録がディレクトリにあたり、ディレクト
リの特徴は誰でもあらゆる場所から検索できる事である。
インターネット上で IP アドレスとホスト名を対応させる
DNS(Domain Name Syetem)はディレクトリサービス
で実装されている。
2.1
LDAP 導入の長所・用途
これまで、samba や mysql 等のサーバーを扱うとユー
ザーの管理はサーバー毎に別々に行い、ユーザー情報は分
散している状態だった。そこで、LDAP と各サーバーを連
携さす事によって LDAP でユーザーの管理を一元的に行
2.3
短所
・認証情報を格納するオブジェクトクラスがアプリケー
ションにごとに異なると、サーバでの参照ができない。・
ユーザー ID をどこの属性の値にするかがアプリケーショ
ンにごとで異なる可能性がる。
・異なるベンダの LDAP サーバー間でデータを複製する
仕組みが標準化されていない。
3 LDAP のデータ構造
LDAP サーバーで情報を扱う基本単位をエントリと
NAME ’inetOrgPerson’
DESC ’RFC2798: Internet Organizational Person’
SUP organizationalPerson
呼ぶ。LDAP は DN(Distinguished Name) という属性で
STRUCTURAL
LDAP へのエントリを一意に識別する。エントリは*.ldif
MAY (
ファイルに定義して、LDAP サーバーに登録する。
audio $ businessCategory $ carLicense $
DN の 例 dn: cn=yoshikazu,ou=Addressbook,dc=my-
departmentNumber $ displayName $
domain,dc=com,
employeeNumber $ employeeType $ givenName $
DN は一意にしなければならない。データ構造はツリー
homePhone $ homePostalAddress $ initials
$ jpegPhoto $ labeledURI $ mail $ manager $
状で表現できる。
自分が定義した ldif ファイルの一部
mobile $ o $ pager $ photo $ roomNumber $
secretary $ uid $ userCertificate $
x500uniqueIdentifier $ preferredLanguage $
dn: dc=my-domain,dc=com
userSMIMECertificate $ userPKCS12 )
objectClass: dcObject
)
objectClass: organization
o: my-domain Organization
dc: my-domain
詳しくはこちらを参照してくだいさい
http://park15.wakwak.com/ unixlife/practical/openldap1.html
dn: ou=Addressbook,dc=my-domain,dc=com
objectclass: organizationalUnit
ou:Addressbook
4 Open LDAP のインストールの流れ
1. open-ldap-servers と openldap-clients をインストー
ル
2. LDAP サーバーを設定する。
dn: cn=yoshikazu,ou=Addressbook,dc=my-domain,dc=com vi /etc/openldap/slapd.conf
objectclass: inetOrgPerson
objectclass: top
3. LDAP クライアントを設定する
vi /etc/openldap/lapd.conf
ou:Addressbook
4. LDAP サーバーを起動
sn:yoshikazu
/etc/init.d/ldap start
cn:yoshikazu
5. LDAP サーバーをランレベル 5(GUI 上) で起動する
givenName:yoshikazu
よう設定する
homePhone:電話番号
chkconfig ldap on
homePostalAddress:郵便番号
6. LDAP サーバー初期情報登録 (*.ldif ファイルの作成)
initials:YY
7. 既存ユーザ情報を LDAP サーバーへ登録
mail:メールアドレス
8. 既存グループ情報を LDAP サーバーへ登録
mobile:携帯電話の番号
9. ユーザ認証方式に LDAP 認証を追加
ldap のエントリの属性やオブジェクトクラスはスキーマ
によって全て定義される。スキーマではオブジェクトク
ラスが何の属性を持つかも定義する。上の cn=yoshikazu
のエントリでは、objectclass に inetOrgPerson が示さ
れているが inetOrgPerson クラスの属性はスキーマで
homePhone であったり mail が定義されている。オブ
authconfig
10. LDAP サーバー確認
従来の手順でユーザーを追加し、次にそのユーザーを
LDAP サーバーに登録する。そして、従来の手順で追
加したユーザーを削除する。最後に LDAP サーバー
でのユーザー認証を確認する。
ジェクトクラス「inetOrgPerson」を定義するスキーマ
とても、不親切な説明なのでここを参考にやってくださ
の例
い。
objectclass
( 2.16.840.1.113730.3.2.2
http://fedorasrv.com/openldap.shtml
5 LDAP との連携 (メールアプリケーション)
セッション「LDAP とは?」でディレクトリシステム
は現実の世界で電話帳等に当たると述べた。電話帳は基本
的にどんな人でも読むことができるが、LDAP もそれに
あたる。例えばメールアプリケーションによって LDAP
のディレクトリを読み取る事が可能である。ディレクトリ
が、アドレス帳になるのだ。しかもディレクトリはどんな
メールアプリでも読み取る事ができ、アドレス帳を共有し
一元的に管理することができる。セッション「LDAP の
データ構造」のデータ構造で ldif ファイルの例を紹介し
たが、実はこのファイルの
屬妊▲疋譽皇△鮑鄒 し、
番で具体的な情報を格納している。
番と
番が正しく
LDAP に読み込まれると、ディレクトリにはアドレス帳
「Addressbook」に「yoshikazu」が登録される。今回メー
ルアプリケーション「Evolution」で LDAP のディレクト
リから「yoshikazu」の情報を取得する実験を行った。そ
の詳細は自分の HP の ppt ファイル”第 2 回プレゼンテー
ション”に載せた。
6 研究室での LDAP の役割
LDAP サーバーによってアカウントの管理を一元的に
管理し、共有することができる。
1 回の認証手続きで、複数のアプリケーションなどにアク
セスできるシングルサインオンに利用できる。
7 参考サイト
• ldap について詳しく
http://www.thinkit.co.jp/free/tech/18/1/1.html
• インストール手順
http://fedorasrv.com/openldap.shtml
• スキーマについて
http://www.linux.or.jp/JF/JFdocs/LDAPImplementation-HOWTO/schemas.html
• ldap とシングルサインオンについて
http://www.atmarkit.co.jp/fnetwork/rensai/dirt02/01.html
• LDAP に入門(お進め)
http://cvs.cacanet.org/fsc/ldap/0514/