Help us understand the problem. What is going on with this article?

LDAPがなんだかよくわからない

More than 3 years have passed since last update.

LDAPがなんだかよくわからない自分のために

【LDAPとは】

Light weight(軽量)な Directory Access Protocolのこと

LDAPは、ユーザからの検索クエリに対して結果を返したり、システム管理者が内容を自由に追加、変更できるデータベースとして機能する、らしい

【RDB(リレーショナルデータベース)と何が違うのか?】

それだったらRDBでもいいと思う。RDBと何が違うのか?
→ RDBと違って、LDAPは「ディレクトリ」と呼ばれる階層構造(木構造)により構成されている

<データベースが木構造であるメリット>

  • ディレクトリ(階層)によるグルーピングにより、管理がしやすい(木構造だから、枝ごとに管理を委任できる)
  • 目的のユーザ情報がグルーピングされたディレクトリだけ検索すればよいので、検索のパフォーマンスがよい(木構造だから、全検索しなくても、その枝だけ検索すればよい)
  • 主にテキストベースの情報を扱うので処理の負荷が小さい
  • 検索のためのプロトコルとして属性が定義されている。LDAPスキーマとして自分で属性を加えることもできる

【LDAP管理上の単位】

LDAPは管理上の単位として、オブジェクトと、エントリを持つ

オブジェクト→管理者が実際に操作する対象(木構造の葉のこと)

LDAP項目 RDBで言うと
entry レコード
attribute カラム

オブジェクトが要素で、エントリが要素の集まった塊のこと。

データベースと同じように、エントリ(レコード)の追加、削除、編集などができるが、それらを行うまえに、バインドを行わなければならない。
バインドとは認証のこと(ログインみたいなもの)

【LDAPの木構造】

DIT(Directory Information Tree)というらしい。
TOPから順に、

DC(Domain Component)= ドメイン名
OU(Organizational Unit)= 組織単位
CN(Common Name)= 一般名

これらを下位からカンマでつなげると、
DN(Distinguished Name、識別名)になる。当たり前だけど、DNはそのドメインで一意でないといけない。

ちょっと例を見てみよう。
LDAPはデータベースなので、とりあえず登録するものは人でもモノでもなんでもいい。

例えば、日本の、hogehoge社にある、営業課のプリンタを登録してみる。

DC=hogehoge,DC=com ★
OU=Sales
CN=Canon01

★DCはドメインの構成要素のことなので、例えばgoogleだったら、www.google.comは
DC=www,DC=google,DC=comと、3つのDCを持つことになる。

DN:CN=Canon01,OU=Sales,DC=hogehoge,DC=com

こんな感じ。

【LDAP searchの意味がわからない】

ldapsearch -x -h localhost -p 9999 cn=hoge1 -b ds=aaaa, o=bbb, dc=ccc -s sub -a always

-x InfoDirectoryサーバ上で検索する
-h (ldap host) LDAPサーバが稼働しているホスト名またはIPアドレス
-p (ldap port) LDAPサーバに接続するためのポート名
-b (search base) 検索開始位置をデフォルトではなくsearch baseにする
-s (base|one|sub) 検索スコープ。base→ベースオブジェクト、one→1レベル検索、sub→サブツリー検索
-a (never|always|search|find) never→エイリアスを実名参照しない always→常に実名参照 search→検索で実名参照 find→ベースオブジェクトを探すときのみ実名参照

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした