Operation Base Activities

Operation activities are protected blocks of code based on the EmpowerID workflow authorization framework used to determine if the current user in a given workflow process can execute the code contained in that activity against the workflow's target object.

For all the components that we have in EmpowerID, we also have corresponding operation activities. If we create any new component, we won't initially have the operation activity for that component. In such cases, we can request the Product Team to create an operation activity for it, in order to control the CRUD (Create, Update, and Delete) operations on that resource.

  • Almost all EID CRUD activities are delivered as operation activities.

  • Operation activities can have multiple executors and operations defined in a single activity.

  • When an operation activity is added to a workflow, the desired operations must be enabled in the activity right-side menu.

  • The wrapped code will not execute unless the current person has that operation in the context/for the resource against which it is being checked.

To understand what Enabled Operations do, such as the properties they update in the database and the properties they require for binding, you can check this from two different places.

  1. Right click on your Operation Activity and click on Open/Edit Original Activity

and from there go to solution explorer and check the ExecuteExtension.cs class

  1. The second way to find out is by directly opening the classes you see in the solution explorer and observing which columns they will update in the database.

In the labs, we will explore how to use operation-based activities on the Person Component in EmpowerID. We will utilize two operation activities:

  1. CreatePersonOperation (used for creating a Person in EmpowerID)

  2. EditPersonMultiOperations (used for updating Person attributes in EmpowerID)