Sun ONE Calendar Server 6.0 管理员指南 |
第 8 章
使用托管域Sun ONE Calendar Server 6.0 支持托管(虚拟)域。在托管域安装中,所有域共享同一个 Calendar Server 实例,从而允许在同一台服务器上存在多个域。每个域都定义一个命名空间,其中的所有用户、组和资源都是唯一的。另外,每个域都有一组可自定义的属性和首选项。
本章介绍以下主题:
托管域概述本节提供了托管域的概述,包括以下内容:
LDAP 目录的结构
在托管域安装中,LDAP 目录被组织成各不相同、互不交叉的多个部分,每一部分都代表域名系统 (DNS) 中的一个域。每个域都包含唯一的用户、组和资源。每个独特的名称 (DN) 说明一个域的根。
Calendar Server 6.0(或更高版本)支持托管域的以下 LDAP 目录模式版本:
Sun ONE LDAP Schema v.2
图 8-1 显示了使用 Sun ONE LDAP Schema v.2 的托管域安装的 LDAP 目录结构。
图 8-1 使用 LDAP Schema v.2 的 LDAP 目录结构
LDAP Schema v.2 使用平面的 LDAP 目录结构。对于托管域安装,第一级条目(图中的 varriusDomain、sestaDomain 和 siroeDomain)在目录结构中必须平行,不能嵌套。
如果要使用 Sun ONE Identity Server 功能(例如 commadmin 实用程序或单一登录 [SSO]),需要使用 LDAP Schema v.2。
Sun ONE LDAP Schema v.1
图 8-2 显示了使用 Sun ONE LDAP Schema v.1 的托管域安装的 LDAP 目录结构。此结构包含两个域管理树(节点):
DC 树(节点)与 DNS 类似,它用于确定给定域名的域条目。LDAP 属性 inetdomainbasedn 指向基本 DN,基本 DN 是 OSI 树(节点)中的域用户、资源和组的根。在每个域中,Calendar Server 用户、资源和组的标识符必须唯一。
在使用 LDAP Schema v.1 的托管域安装中,目录搜索需要完成以下两个步骤才能找到一个条目:
登录 Calendar Server
对于托管域安装,域中的每个用户都必须具有一个唯一的用户 ID (uid)。需要使用以下格式登录 Calendar Server:
userid[@domain-name]
如果省略 domain-name,Calendar Server 将使用 ics.conf 文件中的 service.defaultdomain 参数指定的域名。因此,如果要登录默认域,只需提供 userid 即可。
对于其目录没有遵循图 8-2 所示结构的安装,则不需要 domain-name。即使指定了域名,也将被系统忽略。
在新用户首次登录 Calendar Server 时,如果 local.autoprovision 被设置为“yes”(默认值)并且为域指定了日历服务,Calendar Server 将自动置备该用户。登录权限取决于 icsStatus 或 icsAllowedServiceAccess 属性。有关详细信息,请参阅表 11-17。
交叉搜索域
默认情况下,用户只能在自己所属的域中搜索用户和组,以邀请他们加入事件。但如果满足以下条件,也可以进行交叉域搜索,以搜索不同域中的用户和组:
- 可在 icsExtendedDomainPrefs 属性的 domainAccess 特性中为每个域指定一个访问控制列表 (ACL),以允许或拒绝从其他域中进行交叉域搜索。这样,即可允许或拒绝从特定域或所有域中搜索某个域。有关 domainAccess 的说明,请参阅表 11-16。有关 ACL 的常规信息,请参阅访问控制列表 (ACL)。
- 每个域都可以指定其用户可以搜索的外部域。LDAP 属性 icsDomainNames 用于指定域用户在搜索用户和组时可以搜索的外部域(只要该外部域的 ACL 允许搜索)。例如,如果 various.org 域的 icsDomainNames 列出了 sesta.com 和 siroe.com,那么 various.org 中的用户就可以在 sesta.com 和 siroe.com 中执行交叉域搜索。有关 icsDomainNames 的说明,请参阅表 11-17。
要设置 LDAP 属性 icsDomainNames 和 icsExtendedDomainPrefs,请使用 Calendar Server csdomain 实用程序。如果使用 csdomain(或其他实用程序,例如 commadmin 或 ldapmodify)添加或更新域的 LDAP 属性,必须重新启动 Calendar Server 才能使新值生效。
支持旧版 Calendar Server 安装
Calendar Server 6.0 支持现有的或旧版的 Calendar Server 5.x 安装。在这种情况下,必须将 ics.conf 文件中的以下参数设置为“no”:
service.virtualdomain.support = "no"
此外,还需要运行 cs5migrate 实用程序将 Calendar Server 5.x 迁移至 Calendar Server 6.0。有关迁移的信息,请参阅《Sun ONE Calendar Server 6.0 安装指南(适用于 Solaris 操作系统)》。
如果决定迁移 Calendar Server 5.x 以使用托管域,还必须运行 csvdmig 实用程序,有关详细信息,请参阅迁移到托管域环境。
创建和管理托管域本节提供有关创建和管理托管域的以下信息:
运行 Directory Server 设置脚本
Directory Server 设置脚本 (comm_dssetup.pl) 可以为 Calendar Server 6.0(和 Messaging Server 6.0)配置 Sun ONE Directory Server 5.x。应在使用 Sun Java Enterprise System 安装程序安装 Calendar Server 6.0 之后,运行 Calendar Server 配置程序 (csconfigurator.sh) 之前运行 comm_dssetup.pl。
comm_dssetup.pl 脚本允许您选择以下选项:
- 要用于 Calendar Server 6.0(和 Messaging Server 6.0)的 Directory Server 5.x 安装目录路径和实例。
- Directory Manager 的独特的名称 (DN)。
- 是否将 Directory Server 5.x 用于用户和组。如果是,还必须为组织树指定 DC 树的基本后缀以及用户和组的基本后缀。
- 是使用 Sun ONE LDAP Schema v.1 还是 Sun ONE LDAP Schema v.2(兼容模式或本机模式)。有关这些模式的信息,请参阅 LDAP 目录的结构。
- 根据您选择的版本更新模式。
- 添加 Directory Server 索引以提高搜索目录的效率。
有关 comm_dssetup.pl 的信息,请参阅《Sun ONE Calendar Server 6.0 安装指南(适用于 Solaris 操作系统)》。
创建新域
要创建新域,请使用以下实用程序之一:
- Sun ONE Identity Server commadmin 实用程序 在使用 LDAP Schema v.2 的情况下,使用该实用程序创建和管理托管域。有关 commadmin 实用程序的信息,请参阅《Sun ONE Messaging and Collaboration 1.0 User Management Utility Installation and Reference Guide》。
- Calendar Server csdomain 实用程序 在使用 LDAP Schema v.1 或 LDAP Schema v.2 的情况下,使用该实用程序创建和管理 LDAP 目录中的新托管域。使用该实用程序可以添加、删除和列出 icsCalendarDomain 对象类中特定域的 Calendar Server 属性及其在 LDAP 目录中的相关值。
注 仅当不需要使用 Identity Server commadmin 实用程序来管理域时,才应使用 csdomain 来创建域。
对于 LDAP Schema v.1,DC 树和 OSI 树(即域指向的节点)都必须已存在于 LDAP 目录服务器上,如图 8-2 所示。Csdomain 实用程序不会创建这些树。
Calendar Server 不支持使用 Identity Server 控制台来创建域。
使用由 Messaging Server 创建的域
如果 Sun ONE Messaging Server 已经创建了托管域,则 Calendar Server 可在此域中置备用户。要使用由 Sun ONE Messaging Server 创建的域,请执行以下操作:
- 在目录服务器中的域条目 o=internet 中添加对象类 icsCalendarDomain,然后在相应的域中为 Calendar Server 用户设置域条目。同时,将 icsStatus 设置为“active”,将 domainAccess 设置为要用于访问控制的 ACL。有关示例,请参阅代码示例 8-1。
要修改 LDAP 目录,请使用 Directory Server 的 ldapmodify 工具。有关使用 ldapmodify 的信息,请参阅《Sun ONE Directory Server Resource Kit 5.2 Tools Reference》。
- 如果从 Calendar Server 5.x 进行迁移,请运行以下实用程序(如果尚未运行):
有关运行迁移实用程序的信息,请参阅《Sun ONE Calendar Server 6.0 安装指南(适用于 Solaris 操作系统)》。
设置域特定的属性和首选项
每个域都有一组属性和首选项,您可以使用 csdomain 或 commadmin 实用程序对它们进行设置。这些属性是 icsCalendarDomain 对象类的一部分。这些属性包含首选项,例如访问权限、访问控制列表 [ACL]、域搜索、域搜索访问权限、用户状态和代理登录。有关完整的列表,请参阅 csdomain 实用程序说明下的表:
置备新的 Calendar Server 用户
在新用户首次登录 Calendar Server 时,如果满足了登录 Calendar Server 中介绍的特定要求,系统将自动置备此用户。新用户必须具有 LDAP 用户 ID 和密码才能登录。
要在域中置备新的 Calendar Server 用户,请使用以下实用程序之一:
- Calendar Server csuser 实用程序。
- Identity Server commadmin 实用程序。有关 commadmin 实用程序的信息,请参阅《Sun ONE Messaging and Collaboration 1.0 User Management Utility Installation and Reference Guide》。
使用 Calendar Server 实用程序管理域
请使用以下 Calendar Server 命令行实用程序来管理托管域安装中的域。每个实用程序都允许您包含 -d domain 选项,用于对特定目标域进行操作。
- 在使用 LDAP Schema v.1 或 LDAP Schema v.2 的情况下,可使用 csdomain 来管理 LDAP 目录中域的 Calendar Server LDAP 属性。可以在 LDAP 目录中创建新域,也可以添加、删除和列出该目录中某个域的 LDAP 属性。有关详细信息,请参阅创建新域。
- 使用 csuser 来管理域中的 Calendar Server 用户。
- 使用 csresource 来管理域中的 Calendar Server 资源日历。
- 使用 cscal 来管理域中的日历及其特性。
- 使用 csattribute 来管理 LDAP 服务器上域的 Calendar Server LDAP 属性。
托管域配置参数表 8-1 介绍了 ics.conf 文件中用于支持托管域的配置参数。如果以下任一参数不在 ics.conf 文件中,请将该参数及其相关值添加到该文件中,然后重新启动 Calendar Server 以使这些值生效。
表 8-1 支持托管域的配置参数
参数
说明
service.virtualdomain.support
启用 (y) 或禁用 (n) 托管(虚拟)域模式支持。默认值为 n。
local.schemaversion
指定 LDAP 模式的版本:
- 1 = Sun ONE LDAP Schema v.1。请参阅 service.dcroot。
- 2 = Sun ONE LDAP Schema v.2。请参阅 service.schema2root。
默认值为 1。
service.dcroot
如果 local.schemaversion = 1,则指定 LDAP 目录中 DC 树的根后缀。
例如:o=internet。
在托管(虚拟)域模式下,Calendar Server 使用 service.dcroot 参数而不是 local.ugldapbasedn 和 local.authldapbasedn 参数。
相反,在非托管(虚拟)域模式下,Calendar Server 使用 local.ugldapbasedn 和 local.authldapbasedn 参数而不是 service.dcroot 参数。
service.schema2root
如果 local.schemaversion = 2,则指定包含所有域的根后缀。
例如:o=sesta.com。
service.defaultdomain
指定此 Calendar Server 实例的默认域。用于在登录过程中没有提供域名的情况。
例如:sesta.com。
service.loginseparator
指定 Calendar Server 解析 "userid[login-separator]domain" 时用于 login-separator 的分隔符字符串。Calendar Server 将依次尝试每一个分隔符。
默认为 @+。
service.siteadmin.userid
指定域管理员的用户 ID。
例如:DomainAdmin@sesta.com。
service.virtualdomain.scope = "select"
控制交叉域搜索:
默认值为 select。
local.domain.language
指定域的语言。默认为 en(英语)。
使用 WCAP 命令如果您的站点配置了托管域支持,则必须在所有 WCAP 命令中使用域名完全限定每个日历 ID (calid) 和用户 ID。例如:jsmith@sesta.com。
迁移到托管域环境要迁移站点以使用托管域,请使用 csvdmig 实用程序。此实用程序将通过为每个日历 ID (calid) 指定一个域名来修改日历数据库和 LDAP 目录。
注意 运行 csvdmig 之前,请与 Sun Microsystems 技术支持或销售代表核实,以确保您使用的是最新版本的实用程序。
Calendar Server 6.0 不支持在同一台服务器上运行多个 Calendar Server 实例。
如果您的站点当前配置了多个 Calendar Server 实例或配置了受限制的虚拟域模式,请与 Sun Microsystems 销售代表联系,以确定您的迁移要求。
csvdmig 迁移实用程序将进行以下更改:
有关运行 csvdmig 的信息,请参阅《Sun ONE Calendar Server 6.0 安装指南(适用于 Solaris 操作系统)》。
除了迁移外,还必须执行以下任务:
- 将 ics.conf 文件中的 service.virtualdomain.support 设置为“yes”。
- 根据所使用的模式设置目录服务器结构。请参阅 LDAP 目录的结构。
- 将 icsCalendarDomain 对象类添加到目录服务器上的 o=internet 域条目中。请参阅使用由 Messaging Server 创建的域。
- 在相应的域中设置 Calendar Server 用户的域条目。然后将 icsStatus 设置为“active”,将 domainAccess 设置为要用于访问控制的 ACL。
有关最新信息,请参阅位于以下 Web 站点的发行说明:
http://docs.sun.com/coll/S1_CalendarServer_60