LDAP 名称服务 客户机根据客户机的凭证级别进行登录到 LDAP 服务器的验证。可以为 LDAP 客户机指定三个可能的凭证级别,LDAP 客户机将使用这些凭证级别进行登录到目录服务器的验证。
Anonymous
如果使用 anonymous 进行访问,则只能访问所有人都能使用的数据。此外,还应考虑安全问题。允许 anonymous 访问目录的某些部分意味着任何具有该目录访问权限的人都具有读取访问权限。如果使用 anonymous 凭证级别,则需要允许对所有的 LDAP 名称项和属性都具有读取访问权限。
绝对不要对目录进行 anonymous 写入,因为任何人都可以在具有写入访问权限的 DIT 中更改信息,包括其他用户的口令或他们自己的标识。
Sun Java System Directory Server 允许基于 IP 地址、DNS 名称、验证方法和时间来限制访问。您可能希望进一步限制访问。有关更多信息,请参阅所用 Sun Java System Directory Server 版本的管理指南中的“管理访问控制”。
Proxy
客户机 使用代理帐户进行登录到目录的验证或绑定到目录。此代理帐户可以是任何允许绑定到目录的项。此代理帐户需要有足够的权限以便在 LDAP 服务器上执行名称服务功能。 需要使用 proxy 凭证级别在每台客户机上配置 proxyDN 和 proxyPassword。经过加密的 proxyPassword 存储在客户机本地。可以为不同组的客户机设置不同的代理。例如,可以为所有的销售客户机配置一个代理,使其可以访问公司范围内可访问的目录和销售目录,同时禁止销售客户机访问包含薪水信息的人力资源目录。或者,在极端情况下,可以为每台客户机指定不同的代理或者为所有客户机仅指定一个代理。典型的 LDAP 部署一般介于这两种极端情况之间。请认真做出选择。代理太少,可能不便于您控制用户对资源的访问。但是,代理太多,又会增加系统设置和维护难度。 您需要根据自己的环境授予代理用户适当的权限。 有关如何确定哪种验证方法最适合您的配置的信息,请参见凭证存储。
如果某个代理用户的口令发生变化,则需要在使用此代理用户的每台客户机上更新该口令。如果针对 LDAP 帐户使用口令失效功能,请确保针对代理用户关闭此功能。
请注意,代理凭证级别应用于任何给定计算机上所有的用户和进程。如果两个用户需要使用不同的命名策略,则他们必须使用不同的计算机。
另外,如果客户机要使用 proxy 凭证进行验证,则 proxyDN 在所有服务器上都必须具有相同的 proxyPassword。
proxy anonymous
proxy anonymous 是一个多值项,其中定义了多个凭证级别。指定了 proxy anonymous 级别的客户机将首先尝试使用其代理标识进行验证。如果客户机由于某种原因(例如,用户锁定、口令过期)而无法作为代理用户进行验证,客户机将使用匿名访问机制。这可能会导致不同级别的服务,具体情况取决于目录的配置方式。
如果将客户机配置为使用 代理标识,则客户机会将其 proxyDN 和 proxyPassword 保存在 /var/ldap/ldap_client_cred 中。为了增强安全性,将仅限超级用户可以访问该文件,并且对 proxyPassword 值进行了加密。尽管以前的 LDAP 实现已将代理凭证存储在客户机的配置文件中,但是 Solaris 9 LDAP 名称服务却未这样做。初始化过程中使用 ldapclient 设置的任何代理凭证都存储在本地。这会提高代理的 DN 和口令信息的安全性。有关设置客户机配置文件的更多信息,请参见第 12 章,设置 LDAP 客户机(任务)。