Implementing a user self-registration scenario using Workflow and Business rules in SAP Cloud Platform – Part 2
In this part of the blog series, I will show you how I have setup rules using Business Rules service. I have already posted a blog “Overview of Business Rules in Cloud Platform“ which shows how to enable this service and create a rule based on a decision table. Please refer to that if you want detailed information on how to create rules. In this blog, I will show you at a high level the components of the rule service and wouldn’t go into the details of what each of the components are.
Firstly, I have created a rules project. The purpose of this rule is to get the vendor organization name as input and provide as an output the approver and the default IdP group.
In Data Objects, I have created two objects.
The “user” data object is a structure which comprises of one attribute called “Organization”
The second data object is “approverDO” which has got two attributes – approver name and IdP group. This data object is what we are going to use as an output type later.
In the Rule service tab, I have defined the execution context and assigned the corresponding data objects as input and results.
In the Rules tab, I have defined a decision table with the logic. This decision table can be easily modified by business user whenever there is a change to the rule.
For demonstration purposes, I will be using two fictitious vendor organizations – “VendorA” and “VendorB”. In the decision table, I have put a condition that if the user request is coming from Organization “vendorA”, it needs to be mapped to a particular approver along with an IdP group. This IdP group needs to be defined in the target IdP. For this blog series, I am using SAP CP Identity Authentication service. I have added another rule for “vendorB” too.
In the Rule set tab, I have assigned the previously created “Rule service” and “Rule”.
Finally, I have deployed the Rule Service using the “Deploy” option
In the next part, I will show you how to get started with building workflows and leverage these business rules via runtime APIs.