Sun Java System Communications Services 6 2005Q4 Delegated Administrator 指南

创建提供商组织和服务提供商管理员

版本的 Delegated Administrator 中,必须使用 Delegated Administrator 所提供的自定义服务提供商模板 (da.provider.skeleton.ldif) 来创建您自己的提供商组织和 SPA。


注 –

运行 Delegated Administrator 配置程序后,还可以在目录中安装样例提供商组织(带有从属组织)和样例 SPA。可通过在配置程序中选择装入样例组织来执行此操作。

但样例组织模板 (da.sample.data.ldif) 只是一个示例,并不是用来创建您自己的提供商组织的模板。有关此示例的详细信息,请参见本附录后面的样例服务提供商组织数据


创建了提供商组织和 SPA 之后,SPA 就可以登录到 Delegated Administrator 控制台,创建和管理从属组织,并将 SPA 职责指派给该 SPA 的组织中的其他用户。但是,这些 SPA 只能管理同一个提供商组织。

要创建另一个提供商组织和管理该组织的 SPA,应再次使用自定义服务提供商模板。

本节包含以下主题:

模板创建的条目

在目录中安装经过编辑的自定义服务提供商模板副本后,就创建了以下条目:

图 A–2 显示了通过安装模板而创建的条目示例。它是各个组织的目录信息树 (Directory Information Tree, DIT) 视图。

图 A–2 只是一个示例。组织名称、SPA 用户名以及 DIT 结构应该特定于您自己的安装。

图 A–2 自定义服务提供商模板:目录信息树视图

自定义服务提供商模板:目录信息树视图。

作为样例安装的自定义服务提供商模板中的节点

图 A–2 显示的示例中的节点如下:

创建提供商组织、从属组织和 SPA 所需的信息

要创建提供商组织、一个从属组织和 SPA,需要将自定义服务提供商模板中的参数替换为特定于您的安装的信息。

当您读取这些参数时,可以看到自定义服务提供商模板中显示的 da.provider.skeleton.ldif 列表。或者打开位于以下目录的实际 ldif 文件:

da_base/lib/config-templates

有关与这些参数相关联的属性的定义,请参见 Sun Java System Communications Services Schema Reference 中的第 5 章 "Communications Services Delegated Administrator Classes and Attributes (Schema 2)" 和第 3 章 "Messaging Server and Calendar Server Attributes" 。

定义提供商组织和从属组织的参数

要创建提供商组织和从属组织,请编辑以下参数:

用于定义 SPA 的参数

要创建 SPA,请编辑以下参数:

有关如何编辑自定义服务提供商模板以及如何在目录中安装信息的说明,请参见创建提供商组织和服务提供商管理员的步骤

创建提供商组织和服务提供商管理员的步骤

使用 ldif 文件 da.provider.skeleton.ldif 来执行以下过程。

Procedure创建提供商组织和服务提供商管理员的步骤

步骤
  1. 在目录中创建一个邮件域。

    如果您尚未创建邮件域,请在目录中创建一个。提供商组织及其从属共享组织将使用此邮件域。

  2. 复制并重命名 da.provider.skeleton.ldif 文件。

    当您安装 Delegated Administrator 后,da.provider.skeleton.ldif 文件会安装在以下目录中:

    da_base /lib/config-templates

  3. 编辑 da.provider.skeleton.ldif 文件副本中的以下参数。将这些参数替换为针对您的安装的相应值。

    有关这些参数的定义,请参见创建提供商组织、从属组织和 SPA 所需的信息

    某些参数在 ldif 文件中多次用到。您必须搜索并替换每个参数的所有实例。

    少数参数代表多值属性的值。可以复制并编辑这些参数及其相关联的属性名称,以便允许这些属性在 ldif 文件中出现多次。以下标出了多值参数。

    • <ugldapbasedn>

    • <maildomain_dn>

    • <maildomain_dn_str>

    • <providerorg>

    • <servicepackage>(多值)

    • <domain_name>(多值)

    • <provider_sub_org>

    • <preferredmailhost>

    • <available_domain_name>(多值)

    • <available_services>(多值)

    • <spa_uid>

    • <spa_password>

    • <spa_firstname>

    • <spa_lastname>

    • <spa_servicepackage>

    • <spa_mailaddress>

      有关与这些参数相关联的属性的定义,请参见 Sun Java System Communications Services Schema Reference 中的第 5 章 "Communications Services Delegated Administrator Classes and Attributes (Schema 2)" 和第 3 章 "Messaging Server and Calendar Server Attributes" 。

  4. 使用 LDAP 目录工具 ldapmodify 在目录中安装提供商组织和 SPA。

    例如,可以运行以下命令:


    ldapmodify -D <directory manager> -w <password> \
    -f <da.provider.finished.ldif>

    其中

    <directory manager> 是 Directory Server 管理员的用户名。

    <password> 是 Directory Server 管理员的密码。

    <da.provider.finished.ldif> 是要在目录中作为新提供商组织和 SPA 安装的、经过编辑的 ldif 文件的名称。

自定义服务提供商模板

模板 (da.provider.skeleton.ldif) 包含一些参数,您必须修改这些参数才能创建新的提供商组织和 SPA。

以下列表显示了 ldif 文件中具有参数的部分。此列表没有包含整个文件。此处不包含支持 Access Manager 所需的条目和 ACI。

您只能在 ldif 文件中修改这些参数。请勿修改文件中与 Access Manager 相关的部分。

da.provider.skeleton.ldif 文件(相关部分)

#
# The following parameterized values must be replaced.
#
# <ugldapbasedn>          :: Root suffix for user/group data
# <maildomain_dn>         :: Complete dn of the mail domain underneath
#                            which the provider organization will be
#                            created.
# <maildomain_dn_str>     :: The maildomain dn with all ',' replaced
#									  by '_'. E.g.
#                            dn --\> o=siroe.com,o=SharedDomainsRoot,
#                            o=Business,dc=red,dc=iplanet,dc=com
#                            dn_str --> o=siroe.com_o=SharedDomainsRoot_
#                            o=Business_dc=red_dc=iplanet_dc=com
# <providerorg>            : Organization value for provider node.
# <servicepackage>        :: One for each service package to include.
#                            All service packages in the system 
#                            may be assigned by leaving this value empty.
# <domain_name>           :: One for each DNS name which may be assigned
#                            to a subordinate organization.
#                            These names form a proper subset (some or
#                            all) of the names listed in the <maildomain>
#                            organization's sunpreferreddomain
#                            and associateddomain attributes. 
# <provider_sub_org>      :: Organization value for the shared subordinate
#                            organization in which the Provider
#                            Administrator resides. 
# <preferredmailhost>     :: Name of the preferred mail host for the
#                            provider's subordinate organization.
# <available_domain_name> :: one for each DNS name that an organization
#                            allows an organization admin to use when
#                            creating a user's mail address.  This is
#                            a proper subset of the values given for
#                            <domain_name> (sunAssignableDomains attribute).
# <available_services>    :: One for each service packags available to an
#                            organization (sunAvailableServices attribute).
#                            These service packages form a proper subset
#                            of the ones assigned to a provider organization
#                            - <servicepackage> (sunIncludeServices 
#                            attribute).  Form is
#                            <service package name>:<count>  
#                            where count is an integer.  If count is absent
#                            then default is unlimited.
# <spa_uid>               :: The uid for the service provider administrator.
# <spa_password>          :: The password for the service provider 
#                            administrator. 
# <spa_firstname>         :: First name of the service provider 
#                            administrator.
# <spa_lastname>          :: Last name of the service provider 
#                            administrator.
# <spa_servicepackage>    :: Service package assigned to the service
#                            provider administrator.
# <spa_mailaddress>       :: The spa's mail address. The domain part of the
#                            mail address must be one of the values used for
#                            <available_domain_name>.
#


#
# Provider Organization
#
dn: o=<providerorg>,<maildomain_dn>
changetype: add
o: <providerorg>
objectClass: top
objectClass: sunismanagedorganization
objectClass: sunmanagedorganization
objectClass: organization
objectClass: sunManagedProvider
sunAllowBusinessOrgType: full
sunAllowBusinessOrgType: shared
sunBusinessOrgBase: o=<providerorg>domainsroot,<ugldapbasedn>
sunIncludeServices: <servicepackage>
sunAssignableDomains: <domain_name>
sunAllowMultipleDomains: true
sunAllowOutsideAdmins: false
sunProviderOrgDN: o=<provider_sub_org>,o=<providerorg>,<maildomain_dn>
# .
# .
# [Entries and ACIs required by Access Manager]
# .
# .

#
# Full Organizations node
#
dn: o=<providerorg>DomainsRoot,<ugldapbasedn>
changetype: add
o: <providerorg>DomainsRoot
objectClass: top
objectClass: organization
objectClass: sunmanagedorganization
# .
# .
# [Entries and ACIs required by Access Manager]
# .
# .

#
# Provider Admin Role shared organizations
#
dn: cn=Provider Admin Role,o=<providerorg>,<maildomain_dn>
changetype: add
cn: Provider Admin Role
objectClass: ldapsubentry
objectClass: nssimpleroledefinition
objectClass: nsroledefinition
objectClass: nsmanagedroledefinition
objectClass: iplanet-am-managed-role
objectClass: top
iplanet-am-role-description: Provider Admin

#
# Provider Admin Role full organizations
#
dn: cn=Provider Admin Role,o=<providerorg>DomainsRoot,<ugldapbasedn>
changetype: add
cn: Provider Admin Role
objectClass: ldapsubentry
objectClass: nssimpleroledefinition
objectClass: nsroledefinition
objectClass: nsmanagedroledefinition
objectClass: iplanet-am-managed-role
objectClass: top
iplanet-am-role-description: Provider Admin

#
# Shared Subordinate Organization. Includes 1 user who is 
# the Provider Administrator.
#
dn: o=<provider_sub_org>,=<providerorg>,<maildomain_dn>
changetype: add
preferredMailHost: <preferredmailhost>
sunNameSpaceUniqueAttrs: uid
o: <provider_sub_org>
objectClass: inetdomainauthinfo
objectClass: top
objectClass: sunismanagedorganization
objectClass: sunnamespace
objectClass: sunmanagedorganization
objectClass: organization
objectClass: sunDelegatedOrganization
objectClass: sunMailOrganization
sunAvailableDomainNames: <available_domain_name>
sunAvailableServices: <available_services>
sunOrgType: shared
sunMaxUsers: -1
sunNumUsers: 1
sunMaxGroups: -1
sunNumGroups: 0
sunEnableGAB: true
sunAllowMultipleServices: true
inetDomainStatus: active
sunRegisteredServiceName: GroupMailService
sunRegisteredServiceName: DomainMailService
sunRegisteredServiceName: UserMailService
sunRegisteredServiceName: iPlanetAMAuthService
sunRegisteredServiceName: UserCalendarService
sunRegisteredServiceName: iPlanetAMAuthLDAPService
sunRegisteredServiceName: DomainCalendarService
# .
# .
# [Entries and ACIs required by Access Manager]
# .
# .

dn: ou=People,o=<provider_sub_org>,o=<providerorg>,<maildomain_dn>
changetype: add
ou: People
objectClass: iplanet-am-managed-people-container
objectClass: organizationalUnit
objectClass: top

dn: ou=Groups,o=<provider_sub_org>,o=<providerorg>,<maildomain_dn>
changetype: add
ou: Groups
objectClass: iplanet-am-managed-group-container
objectClass: organizationalUnit
objectClass: top
# .
# .
# [Entries and ACIs required by Access Manager]
# .
# .

#
# User - provider administrator
#
dn: uid=<spa_uid>,ou=People,o=<provider_sub_org>,o=<providerorg>, \
        <maildomain_dn> 
changetype: add
sn: <spa_lastname>
givenname: <spa_firstname>
cn:  <spa_firstname> <spa_lastname>
uid: <spa_uid>
iplanet-am-modifiable-by: cn=Top-level Admin Role,<ugldapbasedn>
objectClass: inetAdmin
objectClass: top
objectClass: iplanet-am-managed-person
objectClass: iplanet-am-user-service
objectClass: iPlanetPreferences
objectClass: person
objectClass: organizationalPerson
objectClass: inetuser
objectClass: inetOrgPerson
objectClass: ipUser
objectClass: inetMailUser
objectClass: inetLocalMailRecipient
objectClass: inetSubscriber
objectClass: userPresenceProfile
objectClass: icsCalendarUser
mailhost: <preferredmailhost>
mail: <spa_mailaddress>
maildeliveryoption: mailbox
mailuserstatus: active
inetCos: <spa_servicepackage>
inetUserStatus: Active
nsroledn: cn=Provider Admin Role,o=<providerorg>,<maildomain_dn>
userPassword: <spa_password>