User-Defined DataPower Policy Activity

Functional overview of DataPower Orchestration Policy User-Defined DataPower Policy Activity.

Orchestration Policy Activities Using Orchestration Policy

Table of Contents

  1. Introduction
  2. Configuration Options
  3. Using Contexts with User-Defined DataPower Policy

Introduction

The "User-Defined DataPower Policy Activity" is a DataPower Orchestration Policy Activity that allows you to add custom processing to the orchestration workflow by referencing a DataPower "Processing Rule" name in the activity definition. A "Processing Rule" is located on the WebSphere DataPower Appliance and must first be defined on the WebSphere DataPower Appliance before it can be referenced in this activity. The "Rule Name" assigned to the processing rule in the WebSphere DataPower Appliance must match the name specified in the Processing Rule Name" field of the activity.

Configuration Options

The policy includes the following configuration options:

Name

  • Allows you to specify a unique name for the activity.

Processing Rule Name

Allows you to enter the name of a single DataPower "Processing Rule." See Using Contexts with User-Defined DataPower Policy for guideline for the proper use of contexts in a DataPower "Processing Rules."

Note: This activity uses the DataPower "Processing Rule." It does not support the DataPower "WS-Proxy Processing Rule."

  • Authenticates Consumer Identity - If this option is enabled (checked), contract authorization occurs after the activity because the activity authenticates a user which can impact the contract authorization process. If this option is disabled (not checked), the contract authorization occurs before the activity.

    Note: The default setting for this option is disabled (unchecked) to reduce DataPower's processing overhead of potentially large "Processing Rules" before Policy Manager authorizes the service call.

Input Variable

A checkbox that allows you to designate the input to the DataPower "Processing Rule." You can specify the default message or user defined message.

  • Message - A predefined variable that stores the results of the message.
  • User-Defined - A user defined variable that you defined in an Invoke Service Activity.

Output Variable

A check-box that allows you to designate where the output of the DataPower "Processing Rule" should be stored. You can specify the default message or user-defined message.

  • Message - A predefined variable that stores the results of the message.
  • User-Defined - A user-defined variable that you defined in an Invoke Service Activity.

Using Contexts with User-Defined DataPower Policy

When enforcing the User-Defined DataPower Policy, DataPower will call out to a user defined processing rule previously defined as a "Processing Rule" object in the DataPower domain being governed. This rule will perform an important user-defined function such as security processing or transformation.

When authoring this rule, the proper use of DataPower contexts is critical to the functioning of the rule and the larger service.

The following lists the key points that should be followed for the proper use of contexts.

  • If actions in the user defined processing rule need to read the current request or response message, their input context should be set to ‘INPUT’
  • The ‘INPUT’ context within the user defined processing rule contains the request or response message as it has been modified over the course of DataPower processing up to the invocation of the user defined rule. It does not contain the original message as received by DataPower.
  • If actions in the user defined processing rule need to modify the current request or response message, their input context should be set to ‘OUTPUT’. The context written to this output will be represented in the response message to DataPower’s consumer.
  • The ‘OUTPUT’ context within the user defined processing rule will be used as the OUTPUT context of the larger transaction once the user defined processing policy completes. That content will be available to other downstream user defined processing rules via the ‘INPUT’ context for that rule as per normal functionality.
  • If a user defined processing rule action does not need access to the ‘INPUT’ context for the action’s input or ‘OUTPUT’ context for the action’s output, it should use the ‘NULL’ context instead.

Back to top