除了基于密码的验证之外,Sun Java System 服务器还支持通过检查用户的数字证书进行的验证。在基于证书的验证中,客户端建立与服务器之间的 SSL 会话并将用户的证书提交给服务器。然后,服务器将鉴定提交的证书是否真实。如果证书有效,则认为用户经过验证。
要将 Messaging Server 设置为基于证书登录,请执行以下操作:
为您的服务器获取服务器证书。(有关详细信息,请参见23.5.1 获得证书)
运行“证书设置向导”以安装所有可信的证书授权机构证书,这些证书授权机构将向服务器要验证的用户颁发证书。(有关详细信息,请参见23.5.1.6 安装可信 CA 证书)
请注意,只要服务器的数据库中至少有一个可信的 CA,服务器就会要求每个连接的客户端提供客户端证书。
打开 SSL。
(有关详细信息,请参见23.5.2 启用 SSL 并选择加密算法)
(可选)编辑服务器的 certmap.conf 文件以便服务器根据提交的证书中的信息来搜索相应的 LDAP 用户目录。
如果用户的证书中的电子邮件地址与用户的目录条目中的电子邮件地址相匹配,则不必编辑 certmap.conf 文件,并且无需针对用户条目中的证书优化搜索或验证已提交的证书。
有关 certmap.conf 的格式和可以进行的更改的详细信息,请参见 Managing Servers with iPlanet Console 中的 SSL 一章。
执行这些步骤后,当客户端建立一个 SSL 会话以便用户可以登录到 IMAP 或 HTTP 时,Messaging Server 会要求客户端提供用户证书。如果客户端所提交的证书由服务器建立为可信的 CA 颁发,并且如果证书中的标识与用户目录中的一项相匹配,则用户经过验证并被授予访问权限(取决于管理该用户的访问控制规则)。
无需禁用基于密码的登录即可启用基于证书的登录。如果允许基于密码的登录(此为默认状态),并且您已经执行了本节中说明的任务,则同时支持基于密码的和基于证书的登录。在这种情况下,如果客户端建立 SSL 会话并提供证书,则使用基于证书的登录。如果客户端未使用 SSL 或未提供证书,则服务器会要求提供密码。