Registering JavaScript extensions
JavaScript extensions might not be useful or applicable to every scriptable function that IBM Verify Identity Governance provides. For example, an extension used by Post Office templates might not be applicable to provisioning policy parameters. An extension designed for one class of script might not load or behave appropriately when loaded into another class of script.
IVIG has the classes of script that are listed in Table 1. JavaScript extensions might be registered to load and run with any combination of these script classes.
JavaScript extensions are configured in these files:
scriptframework.properties(suggested)- For
all new extensions. Use this file to configure script extensions and other scripting
functions. JavaScript extensions are registered in the
IM_HOME/data/scriptframework.properties file. This file is formatted with the
standard Java™ Properties
key[.subkey]=valueformat.- The
keyis the name assigned to the target script class, described in Table 1. - The
valueis the full class name of theScriptExtensioninterface. - (Optional) The
subkeyis used when more than one extension is registered for a script class.
Note:
IVIG is
installed with a set of extensions for each script class already registered in the
scriptframework.properties file. Do not remove these extensions from the file
as they are necessary for the product to function correctly.- To prevent the possibility of a code injection attack, do not use the JavaScript function
eval(). - By default, only the set of extensions registered in the scriptframework.properties file is available for the particular script. You can configure any supported extension for the script by registering JavaScript extensions in the scriptframework.properties file. For information about supported script extensions, see Table 1. For information about the properties and methods available for each JavaScript extension object, see JavaScript extension reference.
- The

fesiextensions.properties(deprecated)
Provides support for Free ECMAScript Interpreter (FESI) JavaScript extensions before Version 5.0 of IBM®
Tivoli® Identity Manager. Do not author new
extensions with this deprecated architecture. If you continue to use the deprecated fesiextensions.properties file, save the fesi.jar library in the IM_HOME/lib directory before you upgrade Tivoli Identity Manager to Version 5.0 or later versions. Replace the newly installed file with the custom fesi.jar file after the upgrade completes.
ITIM.extension.IdentityPolicy=com.ibm.itim.policy.script.IdentityPolicyExtension ITIM.extension.IdentityPolicy.1=com.ibm.itim.policy.script.IdentityPolicyExtension
ITIM.extension.IdentityPolicy.2=com.yourcompany.script.YourCustomExtension| Host Component | Script Class Key |
|---|---|
AccountTemplate |
ITIM.extension.AccountTemplate |
Delegate |
ITIM.extension.Delegate |
HostSelection |
ITIM.extension.HostSelection |
IdentityPolicy |
ITIM.extension.IdentityPolicy |
OrphanAdoption |
ITIM.extension.OrphanAdoption
|
PersonPlacementRules |
ITIM.extension.PersonPlacementRules |
PostOffice |
ITIM.extension.PostOffice |
ProvisioningPolicy |
ITIM.extension.ProvisioningPolicy |
Reminder |
ITIM.extension.Reminder |
Workflow |
ITIM.extension.Workflow |
Workflow Notification |
ITIM.extension.Notification |
TODO Notification (Approval/RFI/ComplianceAlert/WorkOrder) |
ITIM.extension.Notification |