跳过导航链接 | |
退出打印视图 | |
系统管理指南:命名和目录服务(DNS、NIS 和 LDAP) Oracle Solaris 10 8/11 Information Library (简体中文) |
4. 网络信息服务 (Network Information Service, NIS)(概述)
11. 为使用 LDAP 客户机设置 Sun Java System Directory Server(任务)
LDAP 命名服务具有一个缺省的目录信息树 (Directory Information Tree, DIT) 和一个关联的缺省架构。例如,ou=people 容器包含用户帐户、口令和 shadow 信息。ou=hosts 容器包含有关网络中各个系统的信息。ou=people 容器中的每一项都包含 objectclass posixAccount 和 shadowAccount。
缺省的 DIT 是一个设计完善的目录结构,并基于开放标准。它应该能够满足大多数命名服务的需要,因此建议不对其进行更改而直接使用。如果选择使用缺省的 DIT,唯一需要确定的就是要从目录树中的哪个节点(基本 DN)中搜索给定域的命名服务信息。此节点使用 defaultSearchBase 属性来指定。另外,您可能还要设置 defaultSearchScope 属性,以通知客户机应当在哪个搜索范围内执行命名服务查找。是仅搜索该 DN 下的一层 (one),还是搜索该 DN 下的所有子树 (sub)?
但有时候,LDAP 命名服务需要更大的灵活性,以便可以处理现有的 DIT 或命名服务数据分散在目录树中的复杂 DIT。例如,用户帐户项可能存在于树的不同部分。客户机配置文件中的 serviceSearchDescriptor、attributeMap 和 objectclassMap 属性旨在处理这些情况。
使用服务搜索描述符可以覆盖特定服务的缺省搜索基础、搜索范围和搜索过滤器。请参见服务搜索描述符 (Service Search Descriptor, SSD) 和架构映射。
AttributeMap 和 ObjectclassMap 属性提供了一种进行架构映射的方法。这些属性使 LDAP 命名服务可以处理现有的 DIT。例如,您可以将 posixAccount 对象类映射到现有的 myAccount 对象类,也可以将 posixAccount 对象类中的属性映射到 myAccount 对象类中的属性。
多台 LDAP 服务器可以为一个 DIT 提供服务。例如,DIT 的某些子树驻留在其他 LDAP 服务器上。这种情况下,一台 LDAP 服务器可能会指示 LDAP 客户机向其他服务器请求虽然已知、但自身数据库中没有的命名数据。如果您规划这种 DIT 配置,应当设置客户机的配置文件属性 followReferrals,指示 LDAP 命名服务遵循服务器引用,以继续执行命名服务查找。但是,应尽可能使给定域的所有命名数据都位于一个目录服务器上。
如果希望客户机在大多数时间访问只读副本,仅在必要时才按照引用访问读/写主服务器,则引用功能可能非常有用。这样,主服务器将不会因原本可以由副本服务器处理的过多请求而过载。
要充分利用 LDAP,每个逻辑项都应该有一个 LDAP 项。例如,对于用户,您不但可以拥有公司的用户数据库信息,还可以拥有 Solaris 帐户信息,还可能拥有特定于应用程序的数据。由于 posixAccount 和 shadowAccount 是辅助对象类,因此它们可以添加到目录内的任何项中。这将需要您仔细规划、设置和管理。
有关如何选择适当的目录后缀的信息,请参见 Sun Java System Directory Server(以前称为 Sun ONE Directory Server)文档。