LDAPS(エルディエイピーエス)とは | 意味や読み方など丁寧でわかりやすい用語解説
LDAPS(エルディエイピーエス)の意味や読み方など、初心者にもわかりやすいように丁寧に解説しています。
読み方
日本語表記
LDAPS (エルディーエーピーエス)
英語表記
LDAPS (エルディエイピーエス)
用語解説
LDAPSは、LDAP over SSL/TLSの略称であり、ディレクトリサービスへのアクセスプロトコルであるLDAPの通信を暗号化するための技術である。その目的は、ネットワーク上を流れるLDAPの通信内容を保護し、盗聴、改ざん、なりすましといったセキュリティ上の脅威から守ることにある。この技術を理解するためには、まず基盤となるLDAPについて知る必要がある。LDAPはLightweight Directory Access Protocolの略で、ネットワーク上に存在する様々な情報、例えばユーザーアカウント、コンピュータ情報、所属部署、連絡先などを一元的に管理する「ディレクトリサービス」へアクセスするための標準的なプロトコルである。代表的なディレクトリサービスには、Microsoft社のActive DirectoryやオープンソースのOpenLDAPなどがある。多くの企業や組織では、これらのディレクトリサービスを利用して、多数のシステムにおけるユーザー認証やアクセス制御を一元管理している。例えば、社員がPCにログインする際や、社内システムにアクセスする際のIDとパスワードの検証は、背後でLDAP通信によってディレクトリサービスへの問い合わせが行われている。
しかし、標準的なLDAP通信には重大なセキュリティ上の課題が存在する。それは、通信内容が暗号化されず、平文(プレーンテキスト)のままネットワーク上を流れるという点である。通常、LDAPはTCPポート389を使用して通信を行うが、この通信路上で悪意のある第三者がパケットキャプチャなどの手法で通信を盗聴した場合、ユーザー名やパスワードといった極めて重要な認証情報が容易に読み取られてしまう危険性がある。これは、組織全体のセキュリティを根幹から揺るがしかねない深刻な脆弱性である。この問題を解決するために登場したのがLDAPSである。LDAPSは、Webサイトの通信を暗号化するHTTPSがHTTPにSSL/TLSという暗号化層を追加したものであるように、LDAPの通信全体をSSL(Secure Sockets Layer)またはその後継であるTLS(Transport Layer Security)というプロトコルで暗号化する。これにより、クライアントとディレクトリサーバー間の通信経路は保護され、万が一通信が盗聴されても、その内容は暗号化されているため解読することが極めて困難になる。
LDAPSの通信は、標準でTCPポート636を使用して行われる。これは暗号化されていないLDAPが使用するポート389とは明確に区別されている。通信が開始されると、まずSSL/TLSハンドシェイクと呼ばれる手順が実行され、安全な通信路を確立する。このプロセスでは、まずサーバーが自身の身元を証明するための「サーバー証明書」をクライアントに提示する。クライアントは、その証明書が信頼できる第三者機関である認証局(CA)によって発行されたものであるか、有効期限が切れていないかなどを検証する。この検証が成功すると、クライアントとサーバーは、その後の通信を暗号化するための共通の鍵(共通鍵)を安全に交換する。この鍵交換には、サーバー証明書に含まれる公開鍵を利用した公開鍵暗号方式が用いられる。一度、安全な通信路が確立されると、それ以降に送受信される全てのLDAPデータ、すなわち認証情報や検索クエリ、その応答結果などは、この共通鍵を用いて暗号化される。この仕組みによって、通信の機密性(盗聴防止)、完全性(改ざん防止)、そして認証(なりすまし防止)が担保されるのである。
なお、LDAP通信を暗号化するもう一つの方法としてStartTLSという方式も存在する。LDAPSが最初から暗号化された専用ポート(636)で接続を開始するのに対し、StartTLSは、まず平文のLDAPポート(389)で接続を開始し、通信の途中でクライアントとサーバーが合意した上で暗号化通信(TLS)に切り替えるという特徴を持つ。LDAPSはImplicit TLS(暗黙的TLS)、StartTLSはExplicit TLS(明示的TLS)とも呼ばれる。どちらも通信を暗号化するという目的は同じだが、接続方法と使用ポートが異なる。近年では、単一のポートで柔軟に通信方式を選択できるStartTLSが推奨される傾向にあるが、歴史的な経緯や下位互換性の観点から、LDAPSも依然として広く利用され続けている。システムを構築する際には、連携するアプリケーションや機器がどちらの方式に対応しているかを確認することが重要となる。現代のITシステムにおいて、認証情報の保護はセキュリティの基本であり、LDAPを利用する際にはLDAPSまたはStartTLSによる通信の暗号化を適用することは、もはや必須の要件と言える。システムエンジニアを目指す者は、この基本的なセキュリティ技術の仕組みと重要性を正しく理解しておく必要がある。