LDAPSとは

LDAPSは、ディレクトリサービスへのアクセスプロトコルであるLDAPSSL(Secure Sockets Layer)またはTLS(Transport Layer Security)によって暗号化し、通信の安全性と機密性を高めたプロトコルのことです。

正式名称をLDAP over SSL/TLSと呼び、ネットワーク上を流れるユーザー情報やパスワードなどの機密データを第三者による盗聴や改ざんから保護するために利用されます。

LDAPSの役割と必要性

標準的なLDAP通信は平文で行われるため、通信経路上の第三者がパケットを傍受した場合、認証情報などの重要なデータが容易に露呈するリスクがあります。LDAPSはこの課題を解決するために導入されました。

1. 通信の暗号化

クライアントとディレクトリサーバー間のすべてのトラフィックを暗号化します。これにより、インターネットや共用の社内ネットワークを経由する場合でも、安全に情報を送受信できます。

2. サーバーの真正性の確認

デジタル証明書を用いることで、接続先のサーバーが正当な管理者のものであることを証明します。これにより、偽のサーバーへ誘導して情報を盗み取る「なりすまし」攻撃を防止します。

動作の仕組みとポート番号

LDAPSは、TCP/IP参照モデルのアプリケーション層に位置するLDAPのパケットを、トランスポート層のSSL/TLSで包み込むことで実現されます。

ポート番号の使い分け

  • 標準LDAP:通常、TCPポート389番を使用します。通信を開始した後にSTARTTLS命令を用いて暗号化へ切り替えることも可能ですが、これは厳密にはLDAPSとは区別されます。
  • LDAPS:通常、TCPポート636番を使用します。接続の最初からSSL/TLSによるハンドシェイクが行われ、暗号化セッションが確立された状態でLDAPのやり取りが開始されます。

暗号化によるオーバーヘッドとパフォーマンス

LDAPSを導入する際、サーバーおよびクライアント側では暗号化・復号のための計算リソースが必要となります。 通信の総処理時間を

T_{total}

、暗号化・復号にかかる処理時間を

T_{crypto}

、ネットワークの伝送時間を

T_{network}

とすると、以下の関係性が成立します。

T_{total} = T_{network} + T_{crypto}

現代のプロセッサにおいては、AESなどの暗号化アルゴリズムを高速に処理する機能(AES-NIなど)が備わっているため、 T_{crypto} がシステム全体のパフォーマンスに与える影響は限定的ですが、大規模な同時接続が発生する環境ではサーバーのCPU負荷に留意する必要があります。

導入における留意点

証明書の管理

LDAPSの運用には、サーバー側に有効なSSL/TLS証明書をインストールする必要があります。自己署名証明書(いわゆる「オレオレ証明書」)を使用することも可能ですが、クライアント側でその証明書を信頼するように設定しなければ接続エラーが発生します。

互換性と標準化

近年では、636番ポートを使用するLDAPSよりも、389番ポートで通信を開始してから暗号化に移行する「LDAP over STARTTLS」が推奨されるケースもあります。しかし、古いアプリケーションや特定のネットワーク機器との互換性の観点から、依然として専用ポートを使用するLDAPSの需要は非常に高い状況にあります。

LDAPSは、ゼロトラスト時代のネットワーク設計において、アイデンティティ管理(IDM)の安全性を担保するための不可欠な技術基盤となっています。

関連用語

TLS | 今更聞けないIT用語集
LDAP | 今更聞けないIT用語集
クラウドソリューション

お問い合わせ

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

APPSWINGBYの

ソリューション

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

システム開発

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

iOS/Androidアプリ開発

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


リファクタリング

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