ITIM二次开发:Workflow之JavaScriptExtension

ITIM:ibm tivoli identity manager IBM的一个身份管理产品

Workflow:ITIM内置的工作流,可以对用户信息、帐号信息做很多事情,我也还在研究中……

JavaScriptExtension:基于JavaScript与Java交互的事实际机制,可以像javascript一样操作,但实际是调用了后台的Java实现。

目标:用户状态改变时,通过Workflow修改第三方LADP注册库的用户状态~~ 有兴趣的同学欢迎深入交流

要点:
1、ITIM_HOME/data/scriptframework.properties 配置具体实现类
# List of extensions to load for each host component.  Each key must be unique,
# but each key may have multiple suffixes.  All keys start with ITIM.  The valid
# options for keys are: (以下10项是系统定义的,可以理解为它的作用范围)
#   PostOffice
#   ProvisioningPolicy
#   AccountTemplate
#   HostSelection
#   PersonPlacementRules
#   Workflow
#   Reminder
#   IdentityPolicy
#   Notification
#   OrphanAdoption

要添加自己的Class,用于Workflow可以这样配置:
ITIM.extension.Workflow.xxxx=class

Table 1. Script extensions
Script Extension Object Name Object Type
AttributesExtension (deprecated) ATTRIBUTES Map
EmailContextExtension EmailContext EmailContext
EnroleExtension Enrole

error

Enrole
Error

IdentityPolicyExtension IdentityPolicy IdentityPolicy
LoopCountExtension loopcount int
PersonPlacementRulesExtension entry Map
PostOfficeExtension PostOffice PostOffice
ProvisioningPolicyExtension

parameters
reason

Map
int (0: New Account, 1: Existing Account)

AccountModelExtension

Account constructor
AccountSearch constructor

Account
AccountSearch

OrganizationModelExtension ContainerSearch constructor ContainerSearch
PersonModelExtension

Person constructor
PersonSearch constructor

Person
PersonSearch

RoleModelExtension

Role constructor
RoleSearch constructor

Role
RoleSearch

ServiceModelExtension

Service constructor
ServiceSearch

Service
ServiceSearch

ReminderExtension reminderCtx Reminder
ServiceExtension service DirectoryObject
SubjectExtension subject Person

Note: For Orphan Adoption Rule JavaScript,the subject is a Map which contains the account attributes returned from reconciliation.The entries in the map are referred by the name of the account attributes,which may vary based on the service type.

WorkflowExtension

process
activity
Participant constructor
ParticipantType
$RelevantDataName

Process
Activity
Participant
ParticipantType
ProcessData


2、继承ScriptExtension接口实现自己的类
3、要在WAS中添加类到ITIM的LIB目录,否则会说找不到类,即使你上传文件到Tim的LIB目录也是无效的。


你可能感兴趣的:(ITIM二次开发:Workflow之JavaScriptExtension)