Sun[TM] Identity Manager 8.0 发行说明 |
文档补充和更正
本节包括发布 Identity Manager 8.0 文档集后所需的新信息以及更正的信息。此信息分为以下几个部分:
Identity Manager 8.0 管理本节包含 Sun Identity Manager 管理的更正内容:
Identity Manager 技术部署概述本节包含有关 Sun Identity Manager 技术部署概述的新信息和文档更正内容:
将在 Identity Manager 技术部署概述的“Identity Manager 的专用标签”一章中添加或更正以下信息:
th#UserListTreeContent_Col0 {
width: 1px;
}th#UserListTreeContent_Col1 {
width: 1px;
}th#UserListTreeContent_Col2 {
width: 50%;
}th#UserListTreeContent_Col3 {
width: 50%;
}th#ResourceListTreeContent_Col0 {
width: 1px;
}th#ResourceListTreeContent_Col1 {
width: 1px;
}th#ResourceListTreeContent_Col2 {
width: 33%;
}th#ResourceListTreeContent_Col3 {
width: 33%;
}th#ResourceListTreeContent_Col4 {
width: 33%;
}
- 特别需要在最终用户导航栏(选项卡)中使用自定义 JavaScript 函数的客户,必须使用 endUserNavigation 来引用该表单。例如,document.forms['endUserNavigation'].elements。(ID-13769)
- “访问查看面板”和“访问查看详细信息报告”都显示了审计日志中记录的查看实例。如果不进行数据库维护,将从不会截断审计日志,并且查看列表将会增长。Identity Manager 提供了将显示的查看限制到某个特定使用期限范围的功能。要更改此限制,必须自定义 compliance/dashboard.jsp(对于面板)和 sample/auditortasks.xml(对于“详细信息”报告)。(默认情况下,仅显示使用期限小于 2 年的查看。)
- 代码示例 5-5 包含了应该在代码示例 5-4 中显示的信息。
代码示例 5-4 应如下所示:
代码示例 5.5 应如下所示:
代码示例 更改标签面板选项卡
table.Tab2TblNew td {background-image:url(../images/other/dot.gif);background-repeat:repeat-x;background-positi on:left top;background-color:#CCCCFF;border:solid 1px #8f989f}
table.Tab2TblNew td.Tab2TblSelTd {border-bottom:none;background-image:url(../images/other/dot.gif);background-repeat:repeat- x;background-position:left bottom;background-color:#FFF;border-left:solid 1px #8f989f;border-right:solid 1px #8f989f;border-top:solid 1px #8f989f}
现在,您可以将浏览器标题栏中的产品名称字符串替换为所选的可本地化的字符串。
- 导入以下 XML 文件:
代码示例 要导入的 XML
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Configuration name='AltMsgCatalog'>
<Extension>
<CustomCatalog id='AltMsgCatalog' enabled='true'>
<MessageSet language='en' country='US'>
<Msg id='UI_BROWSER_TITLE_PROD_NAME_OVERRIDE'>Override Name</Msg>
</MessageSet>
</CustomCatalog>
</Configuration>
</Extension>
- 使用 Identity Manager IDE,加载要编辑的系统配置对象。添加新的顶层属性:
Name = customMessageCatalog
Type = string
Value = AltMsgCatalog
- 打开 ui.web 通用对象,并查找 browserTitleProdNameOverride 属性。将此值设置为 true。
- 保存此系统配置对象的更改,然后重新启动应用服务器。
- 在“自定义 Identity Manager 最终用户页面”提供的自定义登录页面的说明中,现在应包含以下有关消息关键字的信息。(ID-16072)
JSP 或 Identity Manager 组件
受影响的界面
消息关键字
登录页面 TITLE
管理员和用户
UI_LOGIN_TITLE_TO_RESOURCE
UI_LOGIN_CHALLENGE
登录页面 SUBTITLE
管理员和用户
根据登录模式选择关键字:忘记密码、忘记用户 ID 和登录质询。
UI_LOGIN_WELCOME3
UI_LOGIN_WELCOME4
UI_LOGIN_WELCOME5
UI_LOGIN_WELCOME6
UI_LOGIN_CHALLENGE_INFO
staticLogout.jsp 和 user/staticUserLogout.jsp
管理员和用户
UI_LOGIN_TITLE
continueLogin.jsp
管理员
UI_LOGIN_IN_PROGRESS_TITLE
UI_LOGIN_WELCOME
更改默认“登录身份...”文本
- 导入以下 XML 文件:
<?xml version='1.0' encoding='UTF-8'?>
<!DOCTYPE Configuration PUBLIC 'waveset.dtd' 'waveset.dtd'>
<Configuration name='AltMsgCatalog'>
<Extension>
<CustomCatalog id='AltMsgCatalog' enabled='true'>
<MessageSet language='en' country='US'>
<Msg id='UI_NAV_FOOT_LOG_AS'>mytext {0}!</Msg>
</MessageSet>
</CustomCatalog>
</Extension>
</Configuration>
- 在系统配置对象内的 <Configuration><Extension><Object> 元素中添加以下行:
Identity Manager 工作流、表单和视图本节包含有关 Sun Identity Manager 工作流、表单和视图的新信息和文档更正内容。
第 1 章:Identity Manager 工作流
- Identity Manager 遵循性将工作流作为应用程序的集成和自定义点。下面介绍了默认遵循性相关工作流。(ID-15447)
工作流名称
用途
修正
处理单个遵循性违规的单个修正者的修正
访问查看修正
处理单个 UserEntitlement 的单个修正者的修正
证明
处理单个 UserEntitlement 的单个证明者的证明
多个修正
修正单个遵循性违规和多个修正
更新遵循性违规
缓解遵循性违规
启动访问扫描
从访问查看任务中启动访问扫描
启动权利文件重新扫描
为单个用户启动访问扫描的重新扫描
启动违规重新扫描
为单个用户启动审计策略扫描的重新扫描
- 对 maxSteps 属性描述进行了以下修订:(ID-15618)
第 2 章:工作流服务
- createView 会话工作流服务的参数表是错误的。下表描述了此服务中可用的参数。(ID-14201)
表 1
名称
是否必需
有效值
描述
op
是
createView
viewId
是
指定要创建的视图类型。
options
否
指定特定于视图的选项。可以传递的值特定于所使用的视图。最常用的视图为用户视图。
可以在 session.UserViewConstants 中找到这些选项。简单一些的视图应该在 Viewer.java 文件中声明其选项常量。
在工作流中第二常用的视图可能为 ProcessViewer,然后依次为 PasswordViewer、DisableViewer、EnableViewer 和 RenameViewer。相对来说,这些视图具有较少的选项。
- 应该在 disableUser 工作流服务的描述中阐明,此服务的默认行为是禁用 Identity Manager 帐户以及资源帐户。(ID-14572) 如果不想禁用 Identity Manager 帐户,请传递以下参数:
锁定置备工作流服务
用于锁定对象。
参数
是否必需
描述
subject
否
表示此调用的有效主体。如果不提供此参数,Identity Manager 将使用任务的 subject。如果此参数的值为 none,则 Identity Manager 将不执行授权。
options
否
(映射)选项名称/选项值对的值映射。如果不提供此参数,将使用以下特定的参数。如果提供此参数,则以下任何特定的参数将覆盖此选项映射中包含的相同参数。
accountId
否
(字符串)标识要锁定的 Identity Manager 用户的名称。
adminName
否
(字符串)表示执行此操作的管理员的名称。
loginAppName
否
(字符串)指定登录应用程序的名称。
op
是
有效值为 unlock
此方法将返回一个 null 值。
解除工作流服务的锁定
用于对锁定对象解除锁定。
表 1
参数
是否必需
描述
subject
否
(字符串)表示此调用的有效主体。如果不提供此参数,则将使用任务的主体。如果此参数的值为 none,则不执行授权。
options
否
(映射)选项名称/选项值对的值映射。如果不提供此参数,Identity Manager 将使用以下特定的参数。如果提供此参数,则以下任何特定的参数将覆盖此选项映射中包含的相同参数。
accountId
否
(字符串)标识要解除锁定的 Identity Manager 用户的名称。
adminName
否
(字符串)表示执行此操作的管理员的名称
loginAppName
否
(字符串)指定登录应用程序的名称。
doLighthouse
否
(布尔型)表示是否解除 Identity Manager 帐户的锁定。
doResources
否
(布尔型)表示是否解除用户资源的锁定。
doAuthenticators
否
(布尔型)如果为 true,将解除所有传递验证的锁定。
op
是
有效值为 unlock。
此方法将返回 WavesetResult,其中包含操作结果。
第 3 章,Identity Manager 表单
相关信息
关于与审计相关的表单处理
指定用户表单
默认的与审计相关的表单
下表指出了随 Identity Manager 提供的与审计相关的默认表单。
表 2
表单名称
映射的名称
按用户控制
一般用途
访问批准列表
accessApprovalList
显示证明工作项目的列表
访问查看删除确认
accessReviewDeleteConfirmation
确认删除访问查看
访问查看中止确认
accessReviewAbortConfirmation
确认终止访问查看
访问查看面板
accessReviewDashboard
显示所有访问查看的列表
访问查看修正表单
accessReviewRemediationWorkItem
是
呈现每个基于用户权利文件的修正工作项目
访问查看摘要
accessReviewSummary
显示特定访问查看的详细信息
访问扫描表单
accessScanForm
显示或编辑访问扫描
访问扫描列表
accessScanList
显示所有访问扫描的列表
访问扫描删除确认
accessScanDeleteConfirmation
确认删除访问扫描
访问批准列表
attestationList
是
呈现所有暂挂证明的列表。
证明表单
attestationWorkItem
是
呈现每个证明工作项目
UserEntitlementForm
userEntitlementForm
显示 UserEntitlement 的内容
UserEntitlement 摘要表单
userEntitlementSummaryForm
违规详细信息表单
violationDetailForm
显示遵循性违规的详细信息
修正列表
remediationList
是
显示修正工作项目的列表
审计策略列表
auditPolicyList
显示审计策略列表
审计策略删除确认表单
auditPolicyDeleteConfirmation
确认删除审计策略
冲突违规详细信息表单
conflictViolationDetailsForm
显示 SOD 违规表
遵循性违规摘要表单
complianceViolationSummaryForm
修正表单
reviewWorkItem
是
呈现遵循性违规。
为什么要自定义这些表单?
扫描任务变量
- 现在,可以将警告 (WARNING)、错误 (ERROR) 或信息 (OK) 警报消息插入到 XPRESS 表单中。(ID-14540、ID-14953)
- 使用 Identity Manager IDE 打开要将警告添加到的表单。
- 将 <Property name='messages'> 添加到主 EditForm 或 HtmlPage 显示类中。
- 添加以下示例代码中的 <defvar name='msgList'> 代码块。
- 在以下代码示例字符串中,替换用于确定要在“警报”框中显示的消息文本的消息关键字:
<message name='UI_USER_REQUESTS_ACCOUNTID_NOT_FOUND_ALERT_VALUE >
- 保存并关闭该文件。
代码示例
<Display class='EditForm'>
<Property name='componentTableWidth' value='100%'/>
<Property name='rowPolarity' value='false'/>
<Property name='requiredMarkerLocation' value='left'/>
<Property name='messages'>
<ref>msgList</ref>
</Property>
</Display>
<defvar name='msgList'>
<cond>
<and>
<notnull>
<ref>username</ref>
</notnull>
<isnull>
<ref>userview</ref>
</isnull>
</and>
<list>
<new class='com.waveset.msgcat.ErrorMessage'>
<invoke class='com.waveset.msgcat.Severity' name='fromString'>
<s>warning</s>
</invoke>
<message name='UI_USER_REQUESTS_ACCOUNTID_NOT_FOUND_ALERT_VALUE'>
<ref>username</ref>
</message>
</new>
</list>
</cond>
</defvar>
第 4 章,Identity Manager 视图
通用属性
下表中列出了组织视图的高级属性。
名称
是否可编辑?
数据类型
是否必需?
orgName
读取
字符串
系统生成
orgDisplayName
读取/写入
字符串
是
orgType
读取/写入
字符串
否
orgId
读取
字符串
系统生成
orgAction
写入
字符串
否
orgNewDisplayName
写入
字符串
否
orgParentName
读取/写入
字符串
否
orgChildOrgNames
读取
列表
系统生成
orgApprovers
读取/写入
列表
否
allowsOrgApprovers
读取
列表
系统生成
allowedOrgApproverIds
读取
列表
系统生成
orgUserForm
读取/写入
字符串
否
orgViewUserForm
读取/写入
字符串
否
orgPolicies
读取/写入
列表
否
orgAuditPolicies
读取/写入
列表
否
renameCreate
读取/写入
字符串
否
renameSaveAs
读取/写入
字符串
否
orgName
标识组织的 UID。此值不同于大多数视图对象名称,因为组织可以具有相同的简称,但具有不同的父组织。
orgDisplayName
指定组织的简称。此值仅用于显示,不必具有唯一性。
orgType
定义允许值为 junction 或 virtual 的组织类型。不属于 junction 或 virtual 类型的组织没有值。
orgId
指定用于唯一标识 Identity Manager 内组织的 ID。
orgAction
只有目录连接、虚拟组织和动态组织支持此属性。允许的值为 refresh。当组织为目录连接或虚拟组织时,刷新操作的行为取决于 orgRefreshAllOrgsUserMembers 的值。
orgNewDisplayName
重命名组织时指定新的简称。
orgParentName
标识父组织的完整路径名。
orgChildOrgNames
列出所有直接和间接子组织的 Identity Manager 界面名称。
orgApprovers
列出需要批准此组织中所添加或修改的用户的 Identity Manager 管理员。
allowedOrgApprovers
列出潜在的用户名,这些用户可能成为此组织中所添加或修改的用户的批准者。
allowedOrgApproverIds
列出潜在的用户 ID,这些用户可能成为此组织中所添加或修改的用户的批准者。
orgUserForm
指定此组织的成员用户在创建或编辑用户时所使用的 userForm。
orgViewUserForm
指定此组织的成员用户在查看用户时所使用的查看用户表单。
orgPolicies
标识应用于此组织所有成员用户的策略。这是一个使用类型字符串进行标识的对象的列表:每个策略对象包含以下视图属性,这些属性以 orgPolicies[<type>] 为前缀。其中 <type> 表示策略类型(例如,Lighthouse 帐户)。
orgAuditPolicies
指定应用于此组织所有成员用户的审计策略。
renameCreate
将此属性设置为 true 时,将克隆此组织并使用 orgNewDisplayName 的值创建一个新组织。
renameSaveAs
将此属性设置为 true 时,将使用 orgNewDisplayName 的值重命名此组织。
目录连接和虚拟组织属性
名称
是否可编辑?
数据类型
是否必需?
orgContainerId
读取
字符串
系统生成
orgContainerTypes
读取
列表
系统生成
orgContainers
读取
列表
系统生成
orgParentContainerId
读取
字符串
系统生成
orgResource
读取/写入
字符串
是(对于目录连接或虚拟组织)
orgResourceType
读取
字符串
系统生成
orgResourceId
读取
字符串
系统生成
orgRefreshAllOrgsUserMembers
写入
字符串
否
orgContainerId
指定关联的 LDAP 目录容器的 DN(例如,cn=foo,ou=bar,o=foobar.com)。
orgContainerTypes
列出可以包含其他资源对象的允许的资源对象类型。
orgContainers
列出资源的基本容器,Identity Manager 界面将使用这些容器来显示可供选择的列表。
orgParentContainerId
指定关联的父 LDAP 目录容器的 DN(例如,ou=bar,o=foobar.com)。
orgResource
指定用于同步目录连接和虚拟组织的 Identity Manager 资源的名称(例如,West Directory Server)。
orgResourceType
指出用于同步目录连接和虚拟组织的 Identity Manager 资源的类型(例如,LDAP)。
orgResourceId
指定用于同步目录连接和虚拟组织的 Identity Manager 资源的 ID。
orgRefreshAllOrgsUserMembers
如果此属性为 true 并且 orgAction 的值为 refresh,将同步选定组织及所有子组织的 Identity 组织用户成员资格和资源容器用户成员资格。如果此属性为 false,则不同步资源容器用户成员资格,而只同步选定组织及所有子组织的资源容器和 Identity 组织。
动态组织属性
orgUserMembersRule
标识(使用名称或 UID)authType 为 UserMembersRule 的规则,在运行时将评估此规则以确定用户成员资格。
orgUserMembersCacheTimeout
如果要对 orgUserMembersRule 返回的用户成员进行高速缓存,指定缓存超时之前的时间(以毫秒为单位)。值为 0 表示不进行高速缓存。
对用户视图的讨论现在包含对 accounts[Lighthouse].delegates 属性的以下讨论:(ID-15468)
accounts[Lighthouse].delegates
列出委托对象并按 workItemType 编制索引,其中每个对象指定特定类型的工作项目的委托信息
accounts[Lighthouse].delegatesHistory
列出委托对象并从 0 到 n 编制索引,其中 n 是委托历史记录对象的当前数量,最多为委托历史记录深度。
此属性有一个唯一属性:selected,这是一个布尔型属性,指出当前选定的委托历史对象。
accounts[Lighthouse].delegatesOriginal
执行获取操作或登出视图操作后生成的原始委托对象列表(按 workItemType 编制索引)。
所有 accounts[Lighthouse].delegates* 属性使用以下属性:
accounts[Lighthouse].delegate* 属性的属性
描述
workItemType
指定要委托的 workItem 类型。有关有效的 workItem 类型列表,请参见本文档补充资料的 Identity Manager 技术部署概述一节中的委托对象模型说明。
workItemTypeObjects
列出用户委托将来的 workItem 批准请求时所在的特定角色、资源或组织的名称。当 workItemType 值为 roleApproval、resourceApproval 或 organizationApproval 时,此属性有效。
如果未指定,默认情况下,此属性指定在此用户为批准者的所有角色、资源或组织上委托将来的 workItem 请求。
toType
要委托给的类型。有效值为:
manager
delegateWorkItemsRule
selectedUsers
toUsers
列出要委托给的用户的名称(如果 toType 为 selectedUsers)。
toRule
指定要评估的规则的名称,以确定一组要委托给的用户(如果 toType 为 delegateWorkItemsRule)。
startDate
指定委托的开始日期。
endDate
指定委托的结束日期。
从表单中引用 DelegateWorkItems 视图对象
以下代码示例说明了如何从表单中引用 DelegateWorkItems 视图委托对象:
<Field name='delegates[*].workItemType'>
<Field name='delegates[*].workItemTypeObjects'>
<Field name='delegates[*].toType'>
<Field name='delegates[*].toUsers'>
<Field name='delegates[*].toRule'>
<Field name='delegates[*].startDate'>
<Field name='delegates[*].endDate'>
其中,支持的索引值 (*) 是 workItemType 值。
用于创建和修改 UserEntitlement 对象。
此视图具有以下顶层属性:
名称
是否可编辑?
类型
是否必需?
name
字符串
是
状态
字符串
是
用户
字符串
是
userId
字符串
是
attestorHint
字符串
否
userView
GenericObject
是
reviewInstanceId
字符串
是
reviewStartDate
字符串
是
scanId
字符串
是
scanInstanceId
字符串
是
approvalWorkflowName
字符串
是
organizationId
字符串
是
attestorComments.name
字符串
否
attestorComments.attestor
字符串
否
attestorComments.time
字符串
否
attestorComments.timestamp
字符串
否
attestorComments.status
否
name
标识用户权利文件(使用唯一标识符)。
状态
指定用户权利文件对象的状态。有效状态包括 PENDING、ACCEPTED、REJECTED、REMEDIATING 和 CANCELLED。
用户
标识此权利文件的关联 WSUser 的名称。
userId
指定关联 WSUser 的 ID。
attestorHint
向证明者显示查看确定规则所提供的(字符串)提示。此提示是规则向证明者提供的“建议”。
userView
包含用户权利文件扫描程序所捕获的用户视图。此视图包含零个或多个资源帐户,具体取决于访问扫描对象的配置。
reviewInstanceId
指定 PAR 任务实例的 ID。
reviewStartDate
指出 PAR 任务的(字符串)开始日期(采用规范格式)。
scanId
指定 AccessScan 任务定义的 ID。
scanInstanceId
指定 AccessScan 任务实例的 ID。
approvalWorkflowName
标识要运行的批准工作流的名称。此值来自访问扫描任务定义。
organizationId
指定扫描时 WSUser 组织的 ID。
attestorComments
列出权利文件的证明记录。每个证明记录会指出与权利文件有关的操作或语句,包括批准、拒绝和重新扫描。
attestorComments[timestamp].name
用于标识列表中此元素的时间戳。
attestorComments[timestamp].attestor
标识对权利文件进行注释的证明者的 WSUser 名称。
attestorComments[timestamp].time
指定证明者证明此记录的时间。可能不同于时间戳。
attestorComments[timestamp].status
指出证明者所分配的状态。它可以是任何字符串,但通常是表明证明者所执行的操作的字符串,例如 approve、reject、rescan 或 remediate。
attestorComments[name].comment
包含证明者所添加的注释。
第 6 章:XPRESS 语言
第 8 章:HTML 显示组件
使用多重选择组件(applet 或 HTML 版本)来显示许多管理员角色非常不方便。Identity Manager 提供了一种可伸缩性更强的方法来显示和管理管理员角色:objectSelector 字段模板。(ID-15433)
可伸缩选择库(位于 sample/formlib.xml 中)包含以下示例:使用 objectSelector 字段模板搜索用户可选择的管理员角色名称。
代码示例 objectSelector 字段模板示例
<Field name='scalableWaveset.adminRoles'>
<FieldRef name='objectSelector'>
<Property name='selectorTitle' value='_FM_ADMIN_ROLES'/>
<Property name='selectorFieldName' value='waveset.adminRoles'/>
<Property name='selectorObjectType' value='AdminRole'/>
<Property name='selectorMultiValued' value='true'/>
<Property name='selectorAllowManualEntry' value='true'/>
<Property name='selectorFixedConditions'>
<appendAll>
<new class='com.waveset.object.AttributeCondition'>
<s>hidden</s>
<s>notEquals</s>
<s>true</s>
</new>
<map>
<s>onlyAssignedToCurrentSubject</s>
<Boolean>true</Boolean>
</map>
</appendAll>
</Property>
<Property name='selectorFixedInclusions'>
<appendAll>
<ref>waveset.original.adminRoles</ref>
</appendAll>
</Property>
</FieldRef>
</Field>
如何使用 objectSelector 示例代码
- 从 Identity Manager IDE 中,打开管理员库用户表单对象。
- 在此表单中添加以下代码:
<Include>
<ObjectRef type='UserForm' name='Scalable Selection Library'/>
</Include>
- 选择 AdministratorFields 字段中的 accounts[Lighthouse].adminRoles 字段。
- 使用以下引用替换整个 accounts[Lighthouse].adminRoles:
<FieldRef name='scalableWaveset.adminRoles'/>
- 保存该对象。
随后编辑用户并选择“安全”选项卡时,Identity Manager 将显示自定义表单。单击“...”时,将打开选择器组件并显示搜索字段。可以使用此字段来搜索以文本字符串开头的管理员角色,并将字段的值设置为一个或多个值。
要恢复表单,请通过配置 > 导入交换文件来导入 $WSHOME/sample/formlib.xml。
有关使用 objectSelector 模板来管理环境中具有很多对象的资源和角色的示例,请参见 sample/formlib.xml 中的可伸缩选择库。
- 对 TabPanel 组件的讨论现在包含 validatePerTab 属性的以下描述:(ID-15501)
由三个类组成:Menu、MenuBar 和 MenuItem。
Menu 包含以下属性:
MenuBar 包含以下属性:
MenuItem 包含以下属性:
可以在 MenuBar 或 MenuItem 上设置以下属性:
以下 XPRESS 示例创建带有两个选项卡的菜单。第二个选项卡包含两个子选项卡:
代码示例 Menu、MenuItem 和 MenuBar 组件实现
<Display class='Menu'/>
<Field>
<Display class='MenuItem'>
<Property name='URL' value='user/main.jsp'/>
<Property name='title' value='Home' />
</Display>
</Field>
<Field>
<Display class='MenuBar' >
<Property name='title' value='Work Items' />
<Property name='URL' value='user/workItemListExt.jsp'/>
</Display>
<Field>
<Display class='MenuItem'>
<Property name='URL' value='user/workItemListExt.jsp'/>
<Property name='title' value='Approvals' />
</Display>
</Field>
<Field>
<Display class='MenuItem'>
<Property name='URL' value='user/otherWorkItems/listOtherWorkItems.jsp'/>
<Property name='title' value='Other' />
</Display>
</Field>
</Field>
ListEditor
呈现可编辑的字符串列表。
表 1 ListEditor 组件的属性
属性
描述
listTitle
(字符串)指定 Identity Manager 在 ListEditor 图形表示旁边放置的标签。
pickListTitle
(字符串)指定要在 picklist 组件上使用的标签。
valueMap
(映射)指定列表中值的显示标签映射。
allowDuplicates
(布尔型)值为 true,表示 Identity Manager 允许受管理的列表中出现重复项
allowTextEntry
(布尔型)值为 true,表示 Identity Manager 将显示一个文本输入框和一个添加按钮。
fixedWidth
(布尔型)值为 true,表示组件应该具有固定的宽度(其行为与多重选择组件相同)。
ordered
(布尔型)值为 true,表示值的顺序很重要。
sorted
(布尔型)值为 true,表示应该在选择列表中对值进行排序。如果这些值是多值数据类型并且未进行排序,则 Identity Manager 还会为值列表进行排序。
pickValueMap
(列表或映射)指定选择列表中值的显示标签映射。
pickValues
(列表)指定 picklist 组件中的可用值。如果为 null,将不显示 picklist。
height
(整数)指定首选的高度。
width
(整数)指定首选的宽度。容器可以将其用作表单元格(在其中呈现此项目)的属性。
示例
选项卡式用户表单中的以下示例,展示了使用 ListEditor 显示类的表单字段:
<Field name='accounts[Sim1].Group'>
<Display class='ListEditor' action='true'>
<Property name='listTitle' value='stuff'/>
<Property name='allowTextEntry'>
<Boolean>true</Boolean>
</Property>
<Property name='ordered'>
<Boolean>true</Boolean>
</Property>
</Display>
<Expansion>
<ref>accounts[Sim1].Group</ref>
</Expansion>
</Field>
此代码片段创建了一个字段,客户可以在其中为用户添加组,或从用户删除组。
为 Identity Manager 登录页面启用自动完成功能
附录 A:表单和进程映射
Identity Manager 部署工具本节提供了 Identity Manager 部署工具文档的更正和补充内容:
- 从此手册中删除了“使用 Identity Manager IDE”一章(在以前的发行版中提供)。现在,将在 https://identitymanageride.dev.java.net 上提供安装和配置 Identity Manager 集成开发环境 (Identity Manager IDE) 的说明。(ID-17700)
使用 Identity Manager Profiler
Identity Manager 提供了 Profiler 实用程序,可以帮助您解决部署中遇到的表单、Java、规则、工作流以及 XPRESS 方面的性能问题。
表单、Java、规则、工作流以及 XPRESS 都会造成性能和伸缩问题。Profiler 将会分析这些不同区域所消耗的时间,从而可以确定这些表单、Java、规则、工作流或 XPRESS 对象是否产生了性能和伸缩问题,如果出现问题,将会进一步确定这些对象的哪些部分出现了问题。
本节将介绍如何使用 Identity Manager Profiler,并提供了一个教程帮助您了解如何解决部署中存在的性能问题。信息通过以下方式进行组织:
概述
本节对 Identity Manager Profiler 的功能进行了概述。信息通过以下方式进行组织:
主要功能
可以使用 Profiler 实用程序来执行以下操作
Profiler 查找和管理源的方式
本节介绍了 Profiler 如何查找和管理以下 Identity Manager 对象的源:
对于表单、规则、工作流和 XPRESS 对象 在使用 Profiler 拍摄快照时,服务器会评估所有的性能分析数据并发现该数据所依赖的源。然后,服务器将从系统信息库中获取所有这些源,并将它们包含在快照中。因此,您可以确信显示在快照中的 Identity Manager 对象会准确地反映捕捉到该快照的那一刻的情况。
此过程会增加快照的大小,但相对来说,源大小实际上只是总大小的一小部分。因此,您可以将快照发送到 Sun 的客户支持部门,而不必单独发送源文件。
对于 Java 源 在拍摄 Java 源的快照时,客户机将下载该快照,然后仔细查看快照以便从项目中捕获所有引用的 Java 源。在保存快照时,客户机将压缩这些源并将其附加到快照的结尾处。
然后,在您查看快照并转至 Java 源时,客户机将首先检查快照的内容。如果客户机在该处找不到快照内容,则会检查项目的内容。此过程允许您发送包含性能分析数据(来自自定义 Java 代码和 Identity Manager 代码)的快照。
统计信息注意事项
以下各节包含评估 Profiler 提供的结果时要考虑的信息:
自用时间统计 要计算根节点的自用时间,Profiler 将从根节点的总时间中减去所有子节点的时间。
因此,未分析的子节点的时间会反映在根节点的自用时间中。如果根节点的自用时间很长,则应该查明原因。您可能没有分析适当的方法,因此导致您处理的位置不当。
例如,假设方法 A 调用方法 B。
方法 A 总耗时为 10 秒(这里总时间包括调用方法 B 的时间),并且调用方法 B 总耗时也为 10 秒。
如果分析了方法 A 和 B,则调用栈会反映出该信息。您将看到,方法 A 的自用时间为 0 秒,而方法 B 的自用时间为 10 秒(这 10 秒实际上是在方法 B 中花费的)。但是如果未分析方法 B,则只会看到调用方法 A 耗时 10 秒,并且 A 的自用时间为 10 秒。因此,您可能认为问题就是出在方法 A 中,而不是方法 B 中。
需特别指出的是,您在最初编译 JSP 期间,会注意到 JSP 的自用时间很长。如果您重置收集的结果,然后再重新显示该页,则自用时间将会显著减少。
构造函数调用 因为 Java 分析策略中存在某些限制,所以 this() 或 super() 的初始调用将显示为构造函数调用的同级调用,而不是子级调用。请参见以下示例:
class A
{
public A()
{
this(0);
}
public A(int i)
{
}
}
and:
class B
{
public static void test()
{
new A();
}
}
The call tree will look like this:
B.test()
-A.<init>(int)
-A.<init>()
Rather than this:
B.test()
-A.<init>()
-A.<init>(int)
守护线程 不要被表面上许多 Identity Manager 守护线程(如 ReconTask.WorkerThread.run() 或 TaskThread.WorkerThread.run())所耗费的大量时间所误导。其中大部分时间是在休眠(等待事件)中度过的。必须仔细研究这些情况,以了解这些线程在处理事件时实际使用的时间。
入门
本节介绍了如何启动 Profiler 以及如何使用 Profiler 图形用户界面的各种功能。此信息分为以下几个部分:
准备工作
由于 Profiler 将耗费巨大的内存,因此您应该显著增加服务器和 Netbeans Java 虚拟机 (Java Virtual Machine, JVM) 的内存。
完成后,可以按下一节中所述的方法启动 Profiler。
启动 Profiler
可以使用以下任意方法从 Identity Manager IDE 窗口中启动 Profiler:
启动 Profiler 时,会显示“Profiler 选项”对话框,您可以指定要使用的性能分析选项。指定 Profiler 选项中提供了设置这些选项的说明。
使用 Profiler
本节介绍了 Profiler 图形用户界面的功能以及如何使用这些功能。信息通过以下方式进行组织:
指定 Profiler 选项
“Profiler 选项”对话框由以下选项卡组成:
使用这些选项卡上的选项,可指明要对哪些对象进行性能分析,以及要显示在性能分析中的元素。
指定 Profiler 选项后,单击“确定”可启动 Profiler。根据项目配置,Profiler 将执行以下两项操作之一:
IDM 对象过滤器 “IDM 对象过滤器”选项卡提供了以下选项:
Java 过滤器 选择“Java 过滤器”选项卡可以执行以下操作:
Java 过滤器以方法模式的形式提供,它们采用根据规范的方法名称执行包含或排除操作的模式来表示。其中,规范的方法名称为:
fully-qualified-class-name.method-name(parameter-type-1, parameter-type-2, ...)
下面列举了一些示例:
如有必要,可以通过适当修改 build.xml 中的以下行来分析其他 JAR。例如,
<instrument todir="${lighthouse-dir-profiler}/WEB-INF" verbose="${instrumentor.verbose}" includeMethods="${profiler.includes}" excludeMethods="${profiler.excludes}">
<fileset dir="${lighthouse-dir}/WEB-INF">
<include name="lib/idm*.jar"/>
<include name="classes/**/*.class"/>
</fileset>
</instrument>
默认情况下,该配置包含所有自定义类和大多数 Identity Manager 类。强制排除了一些 Identity Manager 类,这是因为启用这些类会中断 Profiler 的运行。
例如,会排除工作流、表单和 XPRESS 引擎中的类,否则在分析 Java 和 Identity Manager 对象时,Profiler 将会生成难以理解的快照。
请注意,Java 过滤器将提供比 IDM 对象过滤器更细的过滤粒度。因此,使用 Java 分析会显著增加执行时间的开销,从而使性能分析结果出现巨大的偏差。由于是解释而非编译 Identity Manager 对象,因此分析开销可以忽略不计。因此,举例来说,根本没有理由排除工作流 A 而包含工作流 B,等等。
- 删除执行时间为 0 的快照节点:
- Profiler 启动时自动打开浏览器:
- 在快照中包含 Java 源:
在这种情况下,您不希望包含 Identity Manager 源,因为包含它会生成非常大的快照。(有关详细信息,请参见 Profiler 查找和管理源的方式。)
使用 IDM Profiler 视图
IDM Profiler 视图由以下区域组成:
“当前项目”区域 “当前项目”区域包含一个下拉菜单,该菜单列出了所有的当前项目。使用此菜单可以选择要分析的项目。
图标
用途
![]()
启动 Identity Manager Profiler
启动 Profiler 并打开“Profiler 选项”对话框。
![]()
停止 Identity Manager Profiler
停止 Profiler。
![]()
重置收集的结果
重置截止到此刻您收集的所有分析结果。
![]()
修改性能分析
重新打开“Profiler 选项”对话框,以便您可以更改任何设置来修改当前的分析结果。
“状态”区域 “状态”区域会报告您是否与主机进行了连接,并提供有关 Profiler 启动、运行和停止的状态信息。
“性能分析结果”区域 “性能分析结果”区域包含两个图标,如下表中所述:
“已保存的快照”区域 “已保存的快照”区域提供了所有已保存快照的列表。
注
保存快照中提供了保存快照的说明。
此外,还可以使用以下按钮来管理这些快照:
使用“快照视图”
打开快照时,结果会显示在位于 Identity Manager IDE 右上方的“快照视图”窗口中。
快照提供了几种数据视图,将在以下各节中进行介绍:
“调用树”视图 “调用树”视图由一个树表组成,该树表显示了整个系统的调用计时和调用计数。
此树表包含三列:
顶层节点为以下内容之一:
例如,如果查看 idm/login.jsp URL,则会看到 idm/login.jsp 的顶层条目。对于此条目,“时间”列中显示的数据表示单个或多个请求的总时间;“调用次数”列中显示的数据表示调用该页面的总次数。可以随后深入研究该数据,以了解是哪些调用耗用了这些时间。
注
“调用树”还包含“自用时间”节点。“自用时间”值表示该节点自身耗用的时间。(有关详细信息,请参见自用时间统计。)
“热点”视图 “热点”视图提供了节点的平面化列表,用于显示汇总调用计时(不考虑父节点)。
此视图包含以下列:
“反向跟踪”视图 “反向跟踪”视图提供了反向的调用栈,显示了从中调用每个节点的所有调用链。
可以使用这些统计信息来回答如下问题:如果我删除自此节点开始的特定调用链,将节省多少时间?
可以从其他任何快照视图中访问“反向跟踪”视图,方法是右键单击某个节点(称为根节点),然后从弹出式菜单中选择“显示反向跟踪”。
“被调用者”视图 “被调用者”视图提供了节点(称为根节点)的汇总调用树(不考虑其父调用链)。
如果存在一个问题区域,并且整个主调用树中的许多位置都调用了该区域,当您想查看该节点的整体性能分析时,这些统计信息将非常有用。
可以从其他任何快照视图中访问“被调用者”视图,方法是右键单击某个节点(称为根节点),然后从弹出式菜单中选择“显示被调用者”。
使用弹出式菜单选项
右键单击“调用树”视图或“热点”视图中的任意节点,将显示一个弹出式菜单,其中的选项如下表中所述:
菜单选项
描述
转至源
选择此选项可以查看 Java 方法、工作流、表单、规则或 XPRESS 所对应节点的 XML 源。有关此视图的详细信息,请参见 Profiler 查找和管理源的方式。
显示反向跟踪
选择此选项可以访问“反向跟踪”视图。有关此视图的详细信息,请参见“反向跟踪”视图。
显示被调用者
选择此选项可以访问“被调用者”视图。有关此视图的详细信息,请参见“被调用者”视图。
在“热点”视图中查找
选择此选项可以在“热点”视图中查找节点。有关此视图的详细信息,请参见“热点”视图。
“列表选项”>“排序”>
选择此选项可以看到以下选项
“列表选项”>“更改可视列”
选择此选项可以更改在“调用树”或“热点”列表中显示的列。
当显示“更改可视列”对话框时,您可以选择以下一个或多个选项:
搜索快照
使用位于“快照视图”窗口顶部的“搜索”图标
,可以在“调用树”视图或“热点”视图中按名称来搜索节点。
此外,还可以右键单击“调用树”视图或“热点”视图中的任意节点,然后从弹出式菜单中分别选择“在‘调用树’视图中查找”或“在‘热点’视图中查找”来搜索节点。
保存快照
Profiler 提供了几个选项来保存快照。有关这些选项的描述,请参见下表:
图标
用途
“在项目中保存快照”图标(位于“快照视图”窗口的顶部)
在项目的 nbproject/private/idm-profiler 目录中保存快照。Profiler 视图的“已保存的快照”部分会列出在项目中保存的快照。
![]()
“在外部保存快照”图标(位于“快照视图”窗口的顶部)
将快照保存到外部的任意位置。
![]()
“另存为”按钮(位于“已保存的快照”区域中)
将快照保存到外部的任意位置。
教程:解决性能问题
Identity Manager 提供了一个教程 (profiler-tutorial.zip),可以帮助您了解如何使用 Profiler 来解决表单、Java 规则、工作流和 XPRESS 存在的问题。
第 1 步:创建 Identity Manager 项目
按照以下步骤创建 Identity Manager 项目:
- 选择“文件”>“新建项目”。
- 当显示“新建项目”向导时,指定以下内容,然后单击“下一步”:
- 填充“名称和位置”面板上的以下字段,然后单击“下一步”:
- 当显示“Identity Manager WAR 文件位置”面板时,输入 Identity Manager 8.0 war 文件的位置。通常,解压缩此文件可在相同目录中创建一个 idm.war 文件。
- 单击“下一步”转至“系统信息库设置”面板。
无需更改此面板上的默认设置,直接单击“完成”即可。当看到“生成成功”消息显示在“Identity Manager IDE 输出”窗口中时,就可以提取 Profiler 教程文件了。有关说明,请参见第 2 步:解压缩 Profiler 教程。
第 2 步:解压缩 Profiler 教程
在项目根目录中解压缩 profiler-tutorial.zip。提取的文件包括:
<project root>/custom/WEB-INF/config/ProfilerTutorial1.xml
<project root>/custom/WEB-INF/config/ProfilerTutorial2.xml
<project root>/src/org/example/ProfilerTutorialExample.java
<project root>/PROFILER_TUTORIAL_README.txt
现在就可以启动 Profiler 了。
第 3 步:启动 Profiler
启动 Profiler:
第 4 步:设置 Profiler 选项
注
有关所有不同 Profiler 选项的详细信息,请参见指定 Profiler 选项。
为实现本教程的教学目的,请指定以下 Profiler 选项:
- 在“模式”选项卡上,选择“Java 和 IDM 对象”以分析表单、Java、规则、工作流及 XPRESS 对象。
- 选择“Java 过滤器”选项卡。
使用以下步骤禁用除自定义 Java 类(本例中为 org.example.ProfilerTutorialExample)以外的所有 Identity Manager Java 类:
- 单击“确定”以运行 Profiler。
Profiler 完成处理后,系统会提示您登录。
- 输入密码 configurator,选中“记住密码”复选框,然后单击“确定”以继续。
- 当显示 Identity Manager 窗口时,请登录。
注
通常,您应以其他的用户身份登录到 Identity Manager,而不是再以配置者身份登录。您已经以配置者身份登录到 Profiler,Identity Manager 会话池仅允许一个用户具有一个条目。使用多个条目会导致会话池中断,并且可能造成性能分析结果出现偏差,出现更细化的性能问题。
但是,对于此简单示例,会话池没有出现任何问题,因此您可以使用 configurator/configurator 登录。
- 在 Identity Manager 中,选择“服务器任务”>“运行任务”,然后单击 "ProfilerTutorialWorkflow1"。
此教程可能需要一些时间进行响应。
- 尽管您现在可以拍摄快照,但您最好先重置结果、运行 Profiler、再次运行 Profiler,然后再拍摄快照。
注
最佳的做法是在拍摄快照之前运行几次 Profiler,以确保预备好所有缓存、编译好所有 JSP 等等。
通过运行几次 Profiler,您可以重点解决实际的性能问题。不适合应用此做法的唯一一种例外情况是:存在自动填充缓存方面的问题。
- Identity Manager IDE 会下载您的快照,并在窗口的右侧显示结果。
此区域为调用树视图。在“调用树”的顶部,可以看到 /idm/task/taskLaunch.jsp 及其“时间”列中列出的时间。该时间应该表示整个请求耗时六秒以上。
- 展开 /idm/task/taskLaunch.jsp 节点,会看到 ProfilerTutorialWorkflow1 耗时六秒。
- 展开 ProfilerTutorialWorkflow1 节点。请注意,activity2 耗时四秒,activity1 耗时两秒。
- 展开 activity2。
请注意,action1 耗时两秒,action2 耗时两秒。
- 展开 action1,请注意,<invoke> 也耗时两秒。
- 双击 <invoke> 以打开 ProfilerTutorialWorkflow1.xml,并突出显示以下行:
<invoke name='example' class='org.example.ProfilerTutorialExample'/>
您应看到调用 ProfilerTutorialExample 方法耗时两秒。
注
实际上,您浏览的是快照中捕获的 XML 源,而不是项目中的源。快照是完全自包含的。(有关详细信息,请参见 Profiler 查找和管理源的方式。)
- 如果返回到“调用树”,则可以看到所有耗时两秒的路径都通向此方法。(您应看到三个路径,共耗时六秒。)
- 选择“热点”选项卡(位于“调用树”区域的底部)以打开“热点”视图。请注意,ProfilerTutorialExample.example() 的自用时间总计为六秒。
(有关“热点”视图的详细信息,请参见“热点”视图。)
- 右键单击 ProfilerTutorialExample.example(),然后从弹出式菜单中选择“显示反向跟踪”。
将在该区域的底部显示一个新的“反向跟踪”选项卡。
- 展开“反向跟踪”选项卡上的 ProfilerTutorialExample.example() 节点,会看到从三个位置调用了此方法,并且从每个位置调用此方法时都耗时两秒。
(有关“反向跟踪”视图的详细信息,请参见“反向跟踪”视图。)
- 单击“在项目中保存快照”图标
以保存您的快照并将其关闭。
如果查看 "IDM Profiler" 选项卡上的“已保存的快照”部分,则会看到快照。(您可能需要向下滚动才能看到。)
- 选择已保存的快照,然后单击“打开”以重新打开该快照。
- 再次关闭该快照。
对工作流 ManualAction 使用 Profiler
本教程的下一部分将说明如何分析工作流 ManualAction。
- 在 Identity Manager 中,选择“服务器任务”>“运行任务”,然后单击 "ProfilerTutorialWorkflow2"。
稍等片刻,将会显示一个空表单。
- 单击“保存”,将会显示进程图。
- 再次选择“服务器任务”>“运行任务”。
- 返回到 Identity Manager IDE "IDM Profiler" 视图,然后单击“性能分析结果”部分中的“重置收集的结果”图标。
- 接下来,单击 Identity Manager 中的 "ProfilerTutorialWorkflow2"。
- 当再次显示空表单时,单击“保存”。
- 在 "IDM Profiler" 视图中,单击“拍摄快照”。
几秒钟后,快照会显示在“调用树”区域中。您应看到 /idm/task/workItemEdit.jsp 耗时六秒以上。(此结果对应于工作流中的手动操作。)
- 展开 /idm/task/workItemEdit.jsp 节点,请注意,运行 ManualAction 表单中的所有派生共耗时六秒。
- 展开 Derivation、displayNameForm、variables.dummy 及 <block> 节点。
您应看到 <block> 耗时六秒,其中 Profiler 在三次调用 ProfilerTutorialExample.example() 方法时各耗时两秒。
- 可以双击 <block> 查看源。
Identity Manager IDE 常见问题解答 (FAQ)
此常见问题解答回答了与使用 Identity Manager 集成开发环境 (Identity Manager IDE) 相关的一些常见问题。该信息将分为以下几个部分:
使用 NetBeans
问:我应该使用哪个版本的 Netbeans?
答:应使用 Identity Manager 产品文档(针对您所使用的 Netbeans 插件版本提供)中提及的 Netbeans 版本。
问:Netbeans 插件以前工作正常,但在我进行了一些操作之后就不再正常工作了。产生此问题的原因是什么?
答:此问题通常是由 .netbeans 目录中的损坏文件引起的。通常来说,删除 .netbeans 目录,然后重新安装 NetBeans 插件就可解决此问题。(删除 .netbeans 目录可以有效地卸载 NetBeans 插件。虽然您会丢失所有的用户设置,但是项目内容是安全的。)
具体步骤如下所示:
使用项目
问:生成并运行项目花费了很长的时间,Identity Manager IDE 似乎在复制大量的文件。产生此问题的原因是什么?
答:此问题可能是由以下原因引起的:
问:现在我已经创建了 Identity Manager 项目,应将哪些文件签入到源控制中?
答:有关信息,请参见 Identity Manager IDE README.txt 中的“CVS 最佳实践”一节。
问:在 CVS 中使用项目管理的最佳实践是什么?
答:有关信息,请参见 Identity Manager IDE README.txt 中的“CVS 最佳实践”一节。
问:何时将对象导入到系统信息库中?
答:有关信息,请参见使用系统信息库。
问:如何将新的 JAR 添加到项目中?
答:请参见 Identity Manager IDE README.txt 中的“如何添加新的 JAR 依赖关系”一节。
使用系统信息库
问:应将哪些系统信息库用于沙箱库?
答:将嵌入式系统信息库用于沙箱中 -- 特别是在使用 Identity Manager 7.1(或更高版本)时(它会提供一个 HsSQL 系统信息库)。如果不使用嵌入式系统信息库,则会丧失一些功能。
有关详细信息,请参阅 Identity Manager IDE README.txt 中的“使用系统信息库”一节。
问:何时会自动导入对象?
答:必须配置 Identity Manager IDE 才能自动导入对象。
具体步骤如下所示:
问:上载对象最有效的方式是什么?
答:使用以下方法之一来上载修改过的对象:
上述两种方法都能将对象直接上载到服务器,因此不会出现缓存延迟问题,并且速度要比使用“运行项目”或“调试项目”快得多。无论使用什么系统信息库,都能使用“上载对象”功能。
使用 Identity Manager IDE 调试器
问:Identity Manager IDE 调试器速度很慢。产生此问题的原因是什么?
答:提高调试器的性能:
问:我无法在调试器中设置断点。产生此问题的原因是什么?
答:在以下情况中将无法设置断点:
问:我在调试器中设置了断点,但在该断点处并未暂停。产生此问题的原因是什么?
答:请检查以下两项内容:
使用规则
问:在 Netbeans 中开发规则时,为何设计模式不可用于规则库?
答:可以从“项目”视图的资源管理器树中获取设计模式功能。使用以下步骤:
Identity Manager 调优、故障排除和错误消息本节提供了有关 Sun Identity Manager 调优、故障排除和错误消息的新信息和文档更正内容。
- 某些任务已从适配器移至任务软件包。如果已对以下任何任务启动跟踪,或者已自定义引用这些软件包的任务定义,请更新这些路径。
旧软件包名称
新软件包名称
com.waveset.adapter.ADSyncFailoverTask
com.waveset.task.ADSyncFailoverTask
com.waveset.adapter.ADSyncRecoveryCollectorTask
com.waveset.task.ADSyncRecoveryCollectorTask
com.waveset.adapter.SARunner
com.waveset.task.SARunner
com.waveset.adapter.SourceAdapterTask
com.waveset.task.SourceAdapterTask
- “Identity Manager IDE 故障排除”一节中提供的“无法删除错误”故障排除信息不再适用,已从此手册中删除该信息。现在,只要执行以下任一项目操作,Netbeans 的嵌入式应用服务器即会自动关闭:(ID-16851)
- 已将“调试 PasswordSync”一节从 Identity Manager 管理中的 "PasswordSync" 一章移到 Identity Manager 调优、故障排除和错误消息中的“Identity Manager 跟踪和故障排除”一章。(ID-17340)
本地化范围以前,Identity Manager 不对资源对象和函数进行本地化,主要原因是这些对象和函数大多数都是在 Identity Manager 初始化期间加载(通过 init.xml)的样例,并且对象类型的属性在实际客户部署之间可能会有所不同(取决于自定义级别)。以下区域列表将有可能出现英文内容:(ID-16349)
联机帮助本节包含联机帮助的文档更正内容。