本主题仅适用于 IBM Business Process Manager Advanced 配置。

Process Portal 选择用户存储库

联合存储库选项是概要文件的缺省用户帐户存储库选项。如果您的环境需要,您可以更改用户帐户存储库的类型。

开始之前

完成此任务之前,必须完成以下任务:

关于此任务

要对 Process Portal 启用认证访问,必须已配置用户注册表,且应用程序安全性已启用。有关应用程序安全性的信息,请参阅“启用 Business Space 组件的安全性”。

将用户帐户注册表用于 Process Portal 时的注意事项:
  • 基于使用的 LDAP 配置类型,设置可能会影响您正确访问 Business Space。 请确保正确配置用户过滤器、组过滤器和映射设置。 有关更多信息,请参阅 WebSphere Application Server 文档中的 Configuring Lightweight Directory Access Protocol search filters
  • 基于使用的联合存储库配置类型,设置可能会影响您正确访问 Business Space。 请确保正确配置域。有关更多信息,请参阅 WebSphere Application Server 文档中的管理联合存储库配置中的域
  • 缺省情况下,LDAP 安全性设置为使用登录属性 uid(用户标识),以在 Business Space 中进行搜索。 如果 LDAP 安全性更改为使用其他唯一 LDAP 字段,如登录属性 mail(电子邮件地址),那么必须在 ConfigServices.properties 文件中修改 userIdKey 属性,以在 Business Space 中进行搜索。请遵循以下步骤 3。
  • 流程实现所使用的用户和组名格式必须与从已配置的注册表返回的名称格式相匹配。

    某些用户注册表配置会显示长格式的用户和组名。例如,轻量级目录访问协议 (LDAP) 注册表使用长格式 ("cn=User1,ou=test,o=ibm,c=us")。其他配置会显示短格式的用户和组名 ("User1")。

    当将用户和组分配给流程中的团队时,会使用短格式或长格式。 如果切换至不同的用户注册表配置,在新用户注册表配置使用不同名称格式时,现有流程实现会停止工作。独立 LDAP 注册表会返回长名称格式的组名,而联合存储库仅返回短名称。

  • 如果使用 Microsoft SQL Server 数据库和独立 LDAP 注册表,请确保用户专有名称(用户 DN)不会超出 450 个字符。 如果任何用户 DN 条目超出 450 个字符,那么必须为用户帐户存储库指定联合存储库选项。
  • 如果使用联合存储库,那么在窗口小部件和框架中会具有其他功能,例如增强的搜索功能。 搜索用户以共享空间和页面时,搜索范围会包含电子邮件、用户全名和用户标识。

过程

  1. 在“全局安全性”管理控制台页面中的用户帐户联合存储库下,指定联合存储库本地操作系统独立 LDAP 注册表独立定制注册表
  2. 重新启动服务器。
  3. 如果您希望从缺省联合存储库中更改缺省用户存储库,请修改 ConfigServices.properties 中的 MashupAdminForOOBSpace 属性,以将正确用户标识(也就是您的用户存储库 UID 属性)指定为有效管理员标识。
    1. 将修改过的文件复制到系统上的某个空文件夹中。 对于独立服务器,ConfigServices.properties 文件位于 profile_root\BusinessSpace\node_name\server_name\mm.runtime.prof\config\ConfigService.properties,而对于集群,该文件位于 deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\config\ConfigService.properties
    2. 使用 wsadmin 脚本编制客户机运行 updatePropertyConfig 命令。
      要点: 对于 Windows,propertyFileName 参数的值必须是该文件的完整路径,并且所有反斜杠必须成对出现,例如: AdminTask.updatePropertyConfig('[-serverName server_name -nodeName node_name -propertyFileName "profile_root\\BusinessSpace\\node_name\\server_name\\mm.runtime.prof\\config\\ConfigService.properties" -prefix "Mashups_"]')
      • 对于独立服务器:

        以下示例使用 Jython:

        AdminTask.updatePropertyConfig('[-serverName server_name -nodeName node_name
        -propertyFileName "profile_root\BusinessSpace\node_name\server_name
        \mm.runtime.prof\config\ConfigService.properties" -prefix "Mashups_"]')
        AdminConfig.save()

        以下示例使用 Jacl:

        $AdminTask updatePropertyConfig {-serverName server_name -nodeName node_name
         -propertyFileName "profile_root\BusinessSpace\node_name\server_name
        \mm.runtime.prof\config\ConfigService.properties" -prefix "Mashups_"}
        $AdminConfig save
      • 对于集群:

        以下示例使用 Jython:

        AdminTask.updatePropertyConfig('[-clusterName cluster_name -propertyFileName
         "deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\
        config\ConfigService.properties" -prefix "Mashups_"]')
        AdminConfig.save()

        以下示例使用 Jacl:

        $AdminTask updatePropertyConfig {-clusterName cluster_name -propertyFileName
         "deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\
        config\ConfigService.properties" -prefix "Mashups_"}
        $AdminConfig save
    3. 登录到 Process Portal ,并将缺省空间的所有者重新分配给新的管理员标识。
  4. 如果正在将 LDAP 存储库与唯一 LDAP 字段配合使用,如登录属性的 mail(电子邮件地址)而非 uid(用户标识),请修改 ConfigServices.properties 文件中的 userIdKey 属性,以使搜索在 Business Space 中生效。
    1. 对于独立服务器,在 profile_root\BusinessSpace\node_name\server_name\mm.runtime.prof\config\ConfigService.properties 中查找 ConfigServices.properties 文件;对于集群,在 deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\config\ConfigService.properties 中查找。
    2. userIdKey 属性从 uid 更改为可以匹配 LDAP 用户存储库登录属性的属性,例如 mail
    3. 将修改过的文件复制到系统上的某个空文件夹中。
    4. 使用 wsadmin 脚本编制客户机运行 updatePropertyConfig 命令。
      要点: 对于 Windows,propertyFileName 参数的值必须是该文件的完整路径,并且所有反斜杠必须成对出现,例如: AdminTask.updatePropertyConfig('[-serverName server_name -nodeName node_name -propertyFileName "profile_root\\BusinessSpace\\node_name\\server_name\\mm.runtime.prof\\config\\ConfigService.properties" -prefix "Mashups_"]')
      • 对于独立服务器:

        以下示例使用 Jython:

        AdminTask.updatePropertyConfig('[-serverName server_name -nodeName node_name
        -propertyFileName "profile_root\BusinessSpace\node_name\server_name
        \mm.runtime.prof\config\ConfigService.properties" -prefix "Mashups_"]')
        AdminConfig.save()

        以下示例使用 Jacl:

        $AdminTask updatePropertyConfig {-serverName server_name -nodeName node_name
         -propertyFileName "profile_root\BusinessSpace\node_name\server_name
        \mm.runtime.prof\config\ConfigService.properties" -prefix "Mashups_"}
        $AdminConfig save
      • 对于集群:

        以下示例使用 Jython:

        AdminTask.updatePropertyConfig('[-clusterName cluster_name -propertyFileName
         "deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\
        config\ConfigService.properties" -prefix "Mashups_"]')
        AdminConfig.save()

        以下示例使用 Jacl:

        $AdminTask updatePropertyConfig {-clusterName cluster_name -propertyFileName
         "deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\
        config\ConfigService.properties" -prefix "Mashups_"}
        $AdminConfig save
  5. 如果仅限用户和组的子集能够登录到 Process Portal ,可以更改 Business Space Java™ EE 安全角色的映射。
    1. 更新用于两个企业应用程序的用户/组映射:BSpaceEAR_node_servermm.was_node_server(对于独立服务器环境)或者 BSpaceEAR_clustermm.was_cluster(对于网络部署环境)。
    2. 单击应用程序 > 应用程序类型 > WebSphere 企业应用程序,然后选择这两个应用程序。
    3. 在右侧面板中的“详细属性”下,选择安全角色到用户/组映射
    4. 通过首先除去特殊主题,可重新映射两个应用程序中的 businessspaceusersAllauthenticated 角色。
    5. 单击映射特殊主题并选择
    6. 单击映射用户映射组,并将每个角色分配给选定用户或组。
    更改 Java EE 安全角色映射不会影响 Business Space 中的用户/组搜索功能。
  6. 重新启动服务器。
  7. 登录到 Process Portal ,并将缺省空间的所有者重新分配给新的管理员标识。

下一步做什么

注:

如果在 SystemOut.log 文件中发现以下错误,说明用户注册表中可能有无法处理的额外属性:

00000046 SystemErr R Caused by: com.ibm.websphere.wim.exception.WIMSystemException: CWWIM1013E  
    The value of the property secretary is not valid for entity uid=xxx,c=us,ou=yyy,o=ibm.com. 
00000046 SystemErr R at com.ibm.ws.wim.adapter.ldap.LdapAdapter.setPropertyValue(LdapAdapter.java:3338)
ConfigServices.properties 文件中设置以下属性以绕过这些属性:
com.ibm.mashups.user.userProfile = LIMITED
com.ibm.mashups.user.groupProfile = LIMITED

对于独立服务器,ConfigServices.properties 文件位于 profile_root\BusinessSpace\node_name\server_name\mm.runtime.prof\config\ConfigService.properties,而对于集群,该文件位于 deployment_manager_profile_root\BusinessSpace\cluster_name\mm.runtime.prof\config\ConfigService.properties修改 ConfigServices.properties 文件后,按照步骤 4.d 中的指示信息使用 wsadmin 脚本编制客户机来运行 updatePropertyConfig 命令。

注:

如果已在集群中启用 Java EE 安全性,可考虑增强服务器策略中应用于 Business Space 帮助位置的条目的安全性。

Business Space 帮助位置策略为:

grant codeBase "file:${was.install.root}/profiles/profile_name/temp/node_name/-" {

permission java.security.AllPermission;

};

通过将策略更改为以下内容来增强其安全性:

grant codeBase "file:${was.install.root}/profiles/profile_name/temp/node_name/server_name/BSpaceHelpEAR_node_name_server_name/BSpaceHelp.war/-" {

permission java.security.AllPermission;

};