Sun Java System Directory Server Enterprise Edition 6.3 管理指南

在客户端中使用 SASL DIGEST-MD5

在客户端中使用 DIGEST-MD5 机制时,您不必安装用户证书。但是,如果要使用加密的 SSL 连接,则仍须信任服务器证书,如管理证书所述。

指定领域

领域定义用于从中选择验证标识的名称空间。在 DIGEST-MD5 验证中,您必须通过特定领域的验证。

目录服务器使用计算机的全限定主机名作为 DIGEST-MD5 的默认领域。服务器使用 nsslapd-localhost 配置属性中包含的主机名的小写值。

如果未指定领域,将使用服务器提供的默认领域。

指定环境变量

在 UNIX 环境中,必须设置 SASL-PATH 环境变量,以便 LDAP 工具可以找到 DIGEST-MD5 库。DIGEST-MD5 库是由 SASL 插件动态装入的共享库。请按如下方式设置 SASL_PATH 环境变量:


export SASL_PATH=SASL-library

此路径假定目录服务器安装在调用 LDAP 工具的相同主机上。

ldapsearch 命令的示例

可以在不使用 SSL 的情况下执行 DIGEST-MD5 客户端验证。以下示例使用默认的 DIGEST-MD5 标识映射来确定绑定 DN:


$ ldapsearch -h host1 -p 1389 \
 -o mech=DIGEST-MD5 [ \
 -o realm="example.com"] \
 -o authid="dn:uid=bjensen,dc=example,dc=com" \
 -w - \
 -o authzid="dn:uid=bjensen,dc=example,dc=com" \
 -o secProp="minssf=56,maxssf=256,noplain" \
 -b "dc=example,dc=com" "(givenname=Richard)"

上述示例说明如何使用 -o(小写字母 o)选项指定 SASL 选项。领域是可选的,但如果指定,则必须是服务器主机的全限定域名。authidauthzid 必须同时存在且完全相同,但不会使用适用于代理操作的 authzid-w 选项适用于 authid

authid 的值是标识映射中使用的主体。authid 应包含 dn: 前缀后跟目录中的有效用户 DN,或者包含 u: 前缀后跟由客户端确定的任何字符串。authid 的这种用法允许您使用DIGEST-MD5 标识映射中显示的映射。

最常用的配置是使用 SSL 连接通过 LDAPS 安全端口提供加密,以及使用 DIGEST-MD5 提供客户端验证。以下示例将通过 SSL 执行相同的操作:


$ ldapsearch -h host1 -P 1636 \
 -Z -P .mozilla/bjensen/BJE6001.slt/cert8.db \
 -N "cert-example" -w - \
 -o mech=DIGEST-MD5 [-o realm="example.com"] \
 -o authid="dn:uid=bjensen,dc=example,dc=com" \
 -o authzid="dn:uid=bjensen,dc=example,dc=com" \
 -o secProp="minssf=0,maxssf=0,noplain" \
 -b "dc=example,dc=com" "(givenname=Richard)"

在此示例中,由于操作是通过 SSL 执行的,因此 ldapsearch 命令需要使用 -N-w 选项。但是,这些选项不会用于客户端验证。服务器将执行 authid 值中主体的其他 DIGEST-MD5 标识映射。