传统:
Business Automation Workflow 数据库与用户注册表之间同步用户

您可以使用 usersSyncsyncExistingUsersusersFullSync 命令在 WebSphere® Application Server 用户注册表与 Business Automation Workflow 数据库之间同步用户。
重要信息: 由于这些命令的运行给系统带来很高的负载,因此请考虑在空闲时间运行这些命令。

您还可以使用 wsadmin 脚本编制客户机的 AdminTask 对象来执行这些任务。 更多信息,请参阅 BPMUsersSyncTask 、BPMUsersFullSyncTaskBPMSyncExistingUsersTask 命令

使用这些命令通过以下方式更新 Business Automation Workflow 数据库中的用户信息:
表 1. 用于同步用户的命令
命令 用法
usersSync 更新一组指定用户的信息。 您还可以使用此命令在 Business Automation Workflow 数据库中创建已在用户注册表中可用的特定用户。 如果指定了用户注册表中不可用的用户,那么将跳过该用户。
syncExistingUsers 更新 Business Automation Workflow 数据库中现有用户的信息,但不会将新用户从用户注册表导入到数据库中。 您还可以使用此命令将 Business Automation Workflow 数据库中用户的用户状态与用户注册表中的用户可用性同步。 例如,如果已从用户注册表中删除用户,那么该命令会在 Business Automation Workflow 数据库中将这些用户标记为不活动。
usersFullSync 将用户注册表中的所有用户信息导入到 Business Automation Workflow 数据库中。 如果用户注册表包含新用户,那么将在 Business Automation Workflow 数据库中创建这些用户。
注意: 请小心使用此命令。 由于用户注册表中的所有用户都将导入到 Business Automation Workflow 数据库中,因此该命令还可能导入不使用 Business Automation Workflow的用户。
同步命令的运行方式取决于是否为 WebSphere Application Server 安全性配置了联合存储库 (VMM):
非联合存储库
WebSphere Application Server 用户注册表 API 用于运行命令。
联合存储库
联合存储库 API 用于运行命令。 此 API 的性能明显优于用户注册表 API。 用于同步用户信息的 VMM 调用数取决于命令以及 Business Automation Workflow 数据库中的可用用户数。
usersSync
针对每个用户发出一次 VMM 调用。
syncExistingUsers
缺省情况下,如果 Business Automation Workflow 数据库中的可用用户少于 1000 ,那么将针对每个用户发送一个 VMM 调用以同步数据。 如果 Business Automation Workflow 数据库中有超过 1000 个可用用户,那么将改为发送针对所有用户的一个调用。 此阈值是可配置的。
注意: 如果针对所有用户的调用未返回用户注册表中的所有可用用户,请执行下列其中一项操作:
  • 通过更改阈值以反映用户注册表中的实际用户数来强制使用每个用户一个 VMM 调用。
  • 请与您的 LDAP 管理员联系以调整 LDAP 配置,以便可以在一个 LDAP 搜索调用中检索到所有用户。
usersFullSync
针对所有用户发出一个 VMM 调用,而无论数据库中的用户数。
注意: 如果调用未返回用户注册表中的所有可用用户,请与 LDAP 管理员联系以调整 LDAP 配置,以便可以在一个 LDAP 搜索调用中检索所有用户。

命令的输出包含已同步的用户数。

位置

这些脚本位于 deployment_manager_profile/bin 目录中,同时适用于 Windows 和 Linux® 环境。

usersSync 语法

usersSync.[bat|sh]
  -username|-u|-user user_name
  -password|-p password
  [-host host_name]
  [-port port]
  username_1 username_2 ... username_n

syncExistingUsers 语法

syncExistingUsers.[bat|sh]
  -username|-u|-user user_name
  -password|-p password
  [-userState sync|any_other_value]
  [-host host_name]
  [-port port]
  [username_1 username_2 ... username_n]
如果未指定可选用户列表,那么将处理 Business Automation Workflow 数据库中的所有用户。

usersFullSync 语法

usersFullSync.[bat|sh]
  -username|-u|-user user_name
  -password|-p password
  [-host host_name]
  [-port port]

参数

-username|-u|-user 用户名
必需。 管理用户的名称。
-password|-p 密码
必需。 用户密码(未加密)。
-host 主机名
可选。 运行管理任务的 AppTarget 集群成员的主机名。 您还必须指定端口。
-port 端口
可选。 运行管理任务的 AppTarget 集群成员的 SOAP 端口。
-userState sync|any_other_value
仅适用于 syncExistingUsers 命令。 可选。 更新 Business Automation Workflow 数据库中用户的用户状态。
  • 从用户注册表中删除的用户将在 Business Automation Workflow 数据库中变为不活动状态。
  • 在用户注册表中重新激活的用户将在 Business Automation Workflow 数据库中变为活动状态。
如果提供了任何其他值,将不会刷新用户状态。

配置

SOAP 连接
所有命令。 如果使用的是 SOAP 连接,那么完成这些命令所需的时间可能比指定的 SOAP 超时值要长。 虽然命令会继续运行直至完成,但您可能会在 systemOut.log 文件中看到 java.net.SocketTimeoutException: Read timed out 异常。 要防止发生此异常,请在 profile_root/properties/soap.client.props 文件中为 com.ibm.SOAP.requestTimeout 属性设置更高的值。 要禁用超时,请将该属性的值设置为 0
VMM 调优
syncExistingUsersusersFullSync 命令。 如果使用“针对所有用户发出一次 VMM 调用”,那么将在 wimconfig.xml 文件中调整每个相关 LDAP 存储库的 VMM 配置。 尤其是,为 configurationProvider->maxSearchResults 属性选择适当的设置,并考虑调整 ldapServers->connectTimeoutattributesCache->cacheSize 属性的值。 有关调整 VMM 的更多信息,请参阅 WebSphere Application Server Network Deployment Knowledge Center。
用户检索阈值
仅适用于 syncExistingUsers 命令。 根据 Business Automation Workflow 数据库中的可用用户数, threshold-for-existing-user-retrieval-mode 配置属性确定是针对每个用户发送对 VMM 的调用,还是针对所有用户发出一个调用。 缺省值是 1000 个可用用户。
  • 如果不超过 1000 个可用用户,那么将针对每个用户发出调用(逐个用户)。
  • 如果超过 1000 个用户,那么将针对所有用户发出一个调用。
针对阈值属性选择的值取决于环境的性能。 例如,如果 Business Automation Workflow 数据库中有 1500 个用户,并且与针对所有用户的一个 VMM 调用相比,按用户从 VMM 检索这些用户的速度更快,请将该值设置为至少 1500。 另外检查以下配置设置:
  • configurationProvider->maxSearchResults 属性的值适合阈值属性的值
  • 关联的用户存储库(例如,LDAP)的配置不会限制返回的搜索结果总数。
要更改该属性的值,请将具有相应值的以下元素添加到您拓扑的 100Custom.xml 文件中。
<common merge="mergeChildren">                                             
  <security>                                                                
    <vmm-options>                                                             
      <threshold-for-existing-user-retrieval-mode>1000</threshold-for-existing-user-retrieval-mode>                             
    </vmm-options>                                                            
  </security>                                                               
</common>                                                                  
有关如何查找 100Custom.xml 文件的信息,请参阅 100Custom 配置文件的位置