Workflow parameters are intended for the purpose of passing their value to workflow activities at run time. You can specify parameter values when you configure a workflow. In this case, Active Roles stores the parameter values as part of the workflow definition, and retrieves them as needed when running the workflow. Another option is to use a script for generating the value of a workflow parameter at run time.
You can use parameters to increase the reusability of a workflow; for example, if a value is specified in the configuration of a workflow activity, then you need to reconfigure that activity if you want to change the value. With workflow parameters, you can reuse the existing configuration of the activity by passing the appropriate value through a parameter. Here are some examples of workflow parameter usage:
-
Workflow start conditions: When configuring workflow start conditions, you can create a filter that causes the workflow to start if the properties of the operation request match the value of a certain parameter.
-
If-Else branch conditions: When configuring conditions for an If-Else Branch, you can set up a condition that causes the workflow to choose that branch if a certain parameter has a particular value.
-
Search container: When configuring a Search activity, you can choose the option that causes the activity to search in the Organizational Unit or container identified by the value of a certain parameter.
-
Search filter: When configuring a Search activity, you can set up a search filter condition that causes the activity to search for objects whose properties match the value of a certain parameter.
-
Creation container: You can configure a Create activity with the option to create objects in the Organizational Unit or container identified by the value of a certain parameter.
-
Setting object properties: You can configure a Create activity or Update activity with the option to set or change the properties of the object based on the value of a certain parameter.
-
Selecting target object: You can configure an activity to make changes to the object identified by the value of a certain parameter. This applies to activities intended to make changes to objects in Active Directory, such as Update activity, Add to group activity, Move activity, and so on.
-
Destination container: You can configure a Move activity to move the object to the Organizational Unit or container identified by the value of a certain parameter.
Each parameter has a number of properties that define the parameter, including:
-
Name: Each parameter must have a unique name in the workflow definition.
-
Description: You can use this property to describe the purpose of the parameter.
-
Display name: This property specifies the user-friendly name of the parameter.
-
Syntax: This property determines the data type of the parameter value.
-
String: This syntax indicates that the parameter value is a string of characters. You can type the string when you set the value of the parameter.
-
DateTime: This syntax indicates that the parameter stores a date and time value. You can use the date and time picker to supply the parameter value.
-
DN: This syntax indicates that the parameter value is the Distinguished Name of a certain object. You can use the object picker to supply the parameter value.
-
ObjectGUID: This syntax indicates that the parameter value is the Globally Unique Identifier (GUID) of a certain object. You can use the object picker to supply the parameter value.
-
SID: This syntax indicates that the parameter value is the Security Identifier (SID) of a certain object. You can use the object picker to supply the parameter value.
-
SecureString: This syntax indicates that the workflow definition stores the parameter value in encrypted form using an encryption key provided by the Active Roles service. You can use this syntax to handle sensitive data such as passwords.
-
AttributeName: This syntax indicates that the parameter value is the name of a certain attribute from the directory schema. You can use the attribute picker to supply the parameter value.
-
-
Number of values: By default, a parameter can store a single value. You can configure a parameter to store a collection of multiple values.
-
Value is required: By default, a parameter may have no value. You can configure a parameter so that the workflow designer does not allow the workflow definition to be saved if no value is assigned to that parameter.
-
List of acceptable values: This property specifies a list of values that are allowed to be assigned to the attribute. If a given parameter has this property, then the Workflow Designer requires a value for that parameter to be selected from the list when you supply the parameter value. When you configure a parameter, you can specify a list explicitly, or you can configure the parameter to use a script that will generate a list of acceptable values or a single value for that parameter at workflow run time.
To add a parameter to a workflow definition
-
In the Active Roles Console tree, expand Configuration > Policies > Workflow, and select the workflow you want to configure.
This opens the Workflow Designer in the Details pane, representing the workflow definition as a process diagram.
-
In the Details pane, click Workflow options and start conditions to expand the area above the process diagram, and then click Configure.
-
Click the Parameters tab in the dialog that opens.
-
On the Parameters page, click Add to open the Parameter Definition dialog.
-
In the Parameter Definition dialog, complete the following fields:
-
Name: In this box, type the name you want to assign to the parameter. The name must be unique in the workflow definition.
-
(Optional) Description: Use this box to type a description of the parameter.
-
Display name: In this box, type the user-friendly name you want to assign to the parameter.
-
Syntax: From this list, select the syntax you want to the parameter to have. See a list of syntax options earlier in this topic.
If you select the AttributeName syntax option, you are prompted to configure the attribute picker for this parameter. Select the object class whose attributes you want the attribute picker to list by default, and specify whether you want the attribute picker to allow selecting a different object class. You can also specify whether you want the attribute picker to allow selecting a single attribute or multiple attributes.
-
-
If you want the parameter to store a collection of multiple values, select the This parameter is multivalued check box.
-
If you want the Workflow Designer to require that a value be assigned to the parameter, select the This parameter must have a value check box.
-
If you want to specify a list of acceptable values for the parameter, do one of the following:
-
Configure an explicit list of values by using the Add, Change, and Remove buttons below the Acceptable values box.
-
Click Use script to determine parameter values below the Acceptable values box if you want a list of acceptable values to be generated by a script at workflow run time. Then, click the button next to the Script name box to select the script module containing the desired script. The Script Module must be created beforehand. After you have selected a Script Module, in the Function to define a list of acceptable values list, click the name of the script function. You can choose from the script functions that exist in the Script Module. The function must be designed to return a collection of values that match the syntax of the parameter.
-
-
If you want to use a script to assign a value to the parameter at workflow run time, click Use script to determine parameter values below the Acceptable values box. Then, click the button next to the Script name box to select the script module containing the desired script. The Script Module must be created beforehand. After you have selected a Script Module, in the Function to assign a value to this parameter list, click the name of the script function. You can choose from the script functions that exist in the Script Module. The function must be designed to return a value that matches the syntax of the parameter.
Parameters are used to specify certain data when configuring or starting the workflow and then pass that data to workflow activities when the workflow is running. The data is represented as parameter values. To assign a value to a given parameter, select the parameter from the list on the Parameters tab, and then click View or change parameter value.