プロキシ資格または匿名プロキシ資格を割り当てる場合、プロキシによるディレクトリサーバーへの認証方式も選択する必要があります。デフォルトの認証方式は none (匿名によるアクセス) です。認証方式には、関連するトランスポートセキュリティオプションも含まれます。
認証方式には資格レベルと同様、複数値を指定できます。たとえば、クライアントプロファイルを設定することにより、クライアントが TLS でセキュリティ保護された simple メソッドを最初に使用してバインドを試みるようにできます。これが成功しない場合、クライアントは sasl/digest-MD5 メソッドを使用してバインドを試みます。その後、authenticationMethod は tls:simple;sasl/digest-MD5 になります。
LDAP ネームサービスは、いくつかの Simple Authentication and Security Layer (SASL) 機構をサポートします。これらの機構を使用すると、TLS なしでセキュリティ保護されたパスワードを交換できます。ただし、これらの機構はデータの完全性や機密性を保証するものではありません。SASL の詳細については、RFC 2222 を参照してください。
次の認証機構がサポートされています。
none
クライアントは、ディレクトリへの認証を行いません。これは、anonymous 資格レベルと等価です。
認証方式 simple を使用する場合、クライアントマシンはユーザーのパスワードを平文 (clear) で送信してサーバーへのバインドを実行します。このため、セッションが ipsec(7) により保護されていない限り、パスワードが漏洩しやすくなります。認証方式 simple を使用する主な利点は、すべてのディレクトリ サーバーがこの方式をサポートしていること、および設定が容易であるという点です。
認証時にクライアントのパスワードは保護されますが、セッションは暗号化されません。Sun ONE Directory Server 5.1 を含むいくつかのディレクトリサーバーは、sasl/digest-MD5 認証方式もサポートします。digest-MD5 の主な利点は、認証時にパスワードが平文のままネットワーク上を流れないため、simple よりも安全であるという点です。digest-MD5 の詳細については、RFC 2831 を参照してください。digest-MD5 は、cram-MD5 のセキュリティが改善されたものと見なされます。
sasl/digest-MD5 を使用する場合、認証はセキュリティ保護されますがセッションは保護されません。
Sun ONE Directory Server 5.1 を使用している場合、パスワードを「平文」でディレクトリ内に格納する必要があります。
sasl/cram-MD5
この場合、LDAP セッションは暗号化されませんが、 sasl/cram-MD5 を使用して認証が行われるため、認証時にクライアントのパスワードが保護されます。
cram-MD5 認証方式の詳細については、RFC 2195 を参照してください。すべてのディレクトリサーバーが cram-MD5 をサポートしているわけではありません。たとえば、Sun ONE Directory Server 5.1 は cram-MD5 をサポートしません。
tls:simple
クライアントは、simple を使用してバインドを行い、セッションは暗号化されます。パスワードは保護されます。
tls:sasl/cram-MD5
sasl/cram-MD5 を使用して、LDAP セッションの暗号化およびクライアントによるディレクトリサーバーへの認証が行われます。
tls:sasl/digest-MD5
sasl/digest-MD5 を使用して、LDAP セッションの暗号化およびクライアントによるディレクトリサーバーへの認証が行われます。
Sun ONE Directory Server 5.1 で digest-MD5 を使用する場合、パスワードを平文で格納する必要があります。認証方式を sasl/digest-MD5 または tls:sasl/digest-MD5 に設定する場合、プロキシユーザーのパスワードを平文で格納する必要があります。平文で格納する場合には、userPassword 属性が適切な ACI を保持するようにして読み取り不可にするよう、特に注意してください。
次の表に、さまざまな認証方式およびその特性の概要を示します。
表 13–4 認証方式
|
バインド |
セッション |
通信時のパスワード |
Sun ONE DS 5.1 でのパスワード |
セッション |
---|---|---|---|---|---|
none |
不可 |
暗号化しない |
なし |
なし |
暗号化しない |
simple |
可能 |
暗号化しない |
平文 |
任意 |
不可 |
sasl/digest-MD5 |
可能 |
暗号化しない |
暗号化 |
平文 |
不可 |
sasl/cram-MD5 |
可能 |
暗号化しない |
暗号化 |
なし |
不可 |
tls_simple |
可能 |
暗号化しない |
暗号化 |
任意 |
暗号化 |
tls:sasl/cram-MD5 |
可能 |
暗号化 |
暗号化 |
なし |
暗号化 |
tls:sasl/digest-MD5 |
可能 |
暗号化 |
暗号化 |
平文 |
暗号化 |
認証メソッドを特定のサービスに対して serviceAuthenticationMethod 属性に指定できます。現在この機能をサポートしているサービスを次に示します。
passwd-cmd
このサービスは、 Passwd(1)により、ログインパスワードおよびパスワード属性の変更に使用されます。
keyserv
このサービスは、 chkey(1)および newkey(1M)ユーティリティにより、ユーザーの Diffie-Hellman 鍵ペアの作成および変更に使用されます。
pam_ldap
このサービスは、 pam_ldap(5) を使用したユーザーの認証に使用されます。
pam_ldap は、アカウントの管理をサポートします。
サービスが serviceAuthenticationMethod セットを保持しない場合、authenticationMethod 属性の値がデフォルトになります。
次に示す例は、クライアントプロファイルの 1 セクションです。ここで、ユーザーはディレクトリサーバーへの認証に sasl/digest-MD5 を使用しますが、パスワードの変更には SSL セッションを使用します。
serviceAuthenticationMethod=pam_ldap:sasl/digest-MD5 serviceAuthenticationMethod=passwd-cmd:tls:simple |