LDAPとは

LDAPは、ネットワーク上のディレクトリサービスに接続し、ユーザー情報や組織構造などのデータを効率的に検索・管理するためのプロトコルのことです。

正式名称をLightweight Directory Access Protocolと呼び、TCP/IPネットワーク上で動作します。元来はDAP(Directory Access Protocol)という複雑なプロトコルを軽量化したものとして開発されましたが、現在では企業内の認証基盤やアドレス帳の管理における世界標準的な規格として、広範なシステムで利用されています。

LDAPの基本構造とデータモデル

LDAPは、データをツリー状の階層構造(ディレクトリ情報ツリー、DIT)として管理します。この構造により、組織の構成や地理的な位置関係に合わせた柔軟なデータの配置が可能となります。

1. エントリと属性

LDAPにおける個々のデータ単位をエントリと呼びます。各エントリは、属性(名前、メールアドレス、電話番号など)の集合で構成されます。例えば、ユーザー情報を表すエントリには、氏名を示す「cn(Common Name)」や、組織を示す「ou(Organizational Unit)」といった属性が含まれます。

2. 識別名(DN)

ツリー内でのエントリの場所を一意に特定するための名前をDN(Distinguished Name)と呼びます。これはファイルシステムにおけるフルパスのような役割を果たし、特定のユーザーやグループを正確に指定するために使用されます。

主要な利用シーン:認証と一元管理

LDAPが最も頻繁に活用されるのは、シングルサインオン(SSO)を含む認証基盤の構築です。

  • 認証の一元化:複数のアプリケーションやサーバーが個別にパスワード情報を保持するのではなく、LDAPサーバーを参照することで、ユーザー情報の統合管理を実現します。
  • 権限管理:特定のグループ(ou)に所属するユーザーのみにアクセス権を与えるといった制御を、ディレクトリ構造に基づいて容易に行うことができます。

LDAPの動作プロトコル

LDAPはクライアント/サーバーモデルを採用しており、通常はTCPポート番号389を使用します。セキュリティを強化するためにSSL/TLSで暗号化を行う場合は、LDAPS(LDAP over SSL/TLS)としてポート番号636が一般的に用いられます。

通信の手順

  1. バインド(Bind):クライアントがサーバーに対して認証を行い、セッションを確立します。
  2. 検索(Search)/比較(Compare):目的の情報を条件(フィルタ)に基づいて取得します。
  3. 変更(Modify)/追加(Add)/削除(Delete):データの更新作業を行います。
  4. アンバインド(Unbind):セッションを終了します。

検索効率と評価指標

LDAPは「読み取り(検索)」操作に最適化されており、頻繁な更新よりも高度な検索能力が求められる環境で真価を発揮します。 検索時のパフォーマンスを評価する際、ディレクトリ内の全エントリ数を N 、検索フィルタに一致する確率を p とすると、検索にかかる平均的な処理時間

T_{search}

は、インデックスの最適化状況 I を含む以下の関数として近似されます。

T_{search} = f(N, p, I)

大規模な組織において、数万件以上のエントリから瞬時に特定の情報を抽出できるのは、この高度なインデックス設計によるものです。

代表的なLDAPの実装

LDAPプロトコルに基づいたソフトウェアやサービスは多岐にわたります。

  • OpenLDAP:オープンソースで開発されている代表的なLDAPサーバー実装です。
  • Active Directory:Microsoft Windows Serverの機能であり、内部でLDAPプロトコルをサポートしています。
  • クラウド型ディレクトリ:Google Cloud Directory SyncやAzure Active Directory(現Microsoft Entra ID)などが、外部連携のためにLDAPインターフェースを提供しています。

LDAPは、ITインフラがオンプレミスからクラウドへと移行する現代においても、アイデンティティ管理(IDM)の根幹を支える技術として欠かせない存在となっています。

関連用語

オンプレミス(on-premises) | 今更聞けないIT用語集
プロトコル | 今更聞けないIT用語集
クラウドソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。

iOS/Androidアプリ開発

既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。


リファクタリング

他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。