LDAP では、LDAP クライアントが入手する情報の完全性および機密性を保証するために、認証や制御されたアクセスなどのセキュリティー機能がサポートされています。このセクションでは、LDAP クライアントが LDAP サーバーからどのように認証されるかと、ユーザーがクライアントからどのように認証されるかについて説明します。
LDAP リポジトリ内の情報にアクセスするために、LDAP クライアントはディレクトリサーバーとの識別情報を確立します。この識別情報は匿名にすることも、LDAP サーバーによって認識されたホストまたはユーザーとして指定することもできます。LDAP は、識別情報のプロキシ認証とユーザー別認証をサポートしています。
PAM (Pluggable Authentication Module) サービスは、ユーザーログインが成功したかどうかを判断します。LDAP クライアントの識別情報とサーバーのアクセス制御情報 (ACI) に基づいて、LDAP サーバーはクライアントがディレクトリ情報を読み取れることを許可します。ACI の詳細は、使用しているバージョンの Oracle Directory Server Enterprise Edition の管理者ガイドを参照してください。
LDAP 認証のタイプは次のとおりです。
プロキシ認証 - 識別情報がリクエストの送信元システムに基づいています。システムが認証されたあとに、そのシステム上のすべてのユーザーがディレクトリサーバーにアクセスできます。
ユーザー別認証 - 識別情報が各ユーザーに基づいています。ディレクトリサーバーにアクセスして、さまざまな LDAP リクエストを発行するには、すべてのユーザーを認証する必要があります。
ユーザー認証の基盤は PAM モジュールによって異なります。LDAP は次の PAM モジュールを使用できます。
pam_krb5 モジュール - 認証に Kerberos サーバーを使用します。詳細は、pam_krb5(5) のマニュアルページを参照してください。Kerberos の詳細は、Oracle Solaris 11.3 での Kerberos およびその他の認証サービスの管理を参照してください。
pam_ldap モジュール - 認証に LDAP サーバーとローカルホストサーバーを使用します。詳細は、pam_ldap(5) のマニュアルページを参照してください。pam_ldap モジュールの使用については、LDAP アカウント管理を参照してください。
同等の pam_unix_* モジュール - 情報はシステムから提供され、認証はローカルで判断されます。
pam_ldap モジュールを使用した場合、ネームサービスと認証サービスは次の方法でディレクトリにアクセスします。
ネームサービスは、事前定義された識別情報に基づくディレクトリから、さまざまなエントリおよびその属性を読み取ります。
認証サービスは、正しいパスワードが指定されているかどうかを判断するために、LDAP サーバーに対してユーザー名とパスワードを認証します。
Kerberos と LDAP を同時に使用すると、認証サービスとネームサービスの両方をネットワークに提供できます。Kerberos を使用すると、企業でシングルサインオン (SSO) 環境をサポートできます。ユーザーまたはホストごとに LDAP ネームデータの照会する際にも、Kerberos 識別システムを使用できます。
Kerberos を使用して認証を行う場合は、ユーザー別モードの要件として LDAP ネームサービスを有効にしてください。Kerberos には二重の機能があります。Kerberos が LDAP サーバーから認証されると、ユーザーまたはホストの Kerberos 識別情報がディレクトリから認証されるために使用されます。これにより、システムの認証に使用されるのと同じユーザー識別情報がディレクトリの認証にも使用され、検索と更新が実行されます。必要に応じて、ディレクトリの ACI を使用して、ネームサービスの結果を制限できます。
TLS (Transport Layer Security) を使用することで、LDAP クライアントとディレクトリサーバー間の通信がセキュリティー保護されるため、機密性とデータ完全性の両方を保証できます。TLS プロトコルは、Secure Sockets Layer (SSL) プロトコルのスーパーセットです。LDAP ネームサービスでは、TLS 接続がサポートされています。ただし、SSL を使用するとディレクトリサーバーおよびクライアントに負荷がかかります。
TLS を使用するための要件は次のとおりです。
SSL 用にディレクトリサーバーおよび LDAP クライアントを構成します。
SSL 用に Oracle Directory Server Enterprise Edition を構成する場合は、使用しているバージョンの Oracle Directory Server Enterprise Edition に対応した管理者ガイドを参照してください。
必要なセキュリティーデータベースをインストールします (具体的には、証明書および鍵データベースファイル)。
Netscape Communicator の古いデータベースフォーマットを使用する場合は、cert7.db と key3.db をインストールします。
Mozilla の新しいデータベースフォーマットを使用する場合は、cert8.db、key3.db、および secmod.db をインストールします。
cert* ファイルには、信頼できる証明書が含まれています。key3.db ファイルには、クライアントの鍵が入ります。LDAP ネームサービスクライアントがクライアント鍵を使用しない場合でも、key3.db ファイルをインストールする必要があります。secmod.db ファイルには、PKCS#11 などのセキュリティーモジュールが含まれています。
TLS セキュリティーの設定方法の詳細は、TLS のセキュリティーの設定を参照してください。