UI Web Dynpro ABAP

Attribute Based Access Control (ABAC) – Field Masking scenario in EPM Purchase Order application of Web Dynpro ABAP

Introduction

In this blog post, we will learn how to mask “Total Gross Amount”, “Total Net Amount”, and “Total Tax Amount” fields for those Purchase Orders whose “PO Approval Status” is “Initial” in EPM Purchase Order application.

Attribute based authorizations are dynamic determination mechanism which determines whether a user is authorized to access specific data sets which can be based on the context attributes of the user and data (for example, price of certain sensitive materials are masked).

Also Read: SAP ABAP 7.5 Certification Preparation Guide

The end result will appear as:

Prerequisite

UI Data Protection Masking for SAP S/4HANA is a solution that allows you to protect restricted and sensitive data values at field level by masking, clearing, or disabling fields for those users who are not authorized to view or edit this data.

Product “UI data protection masking for SAP S/4HANA” is used in this scenario to protect sensitive data at field level and must be installed in the S/4HANA system.

The product is a cross-application product which can be used to mask/protect any field in SAP GUI, SAPUI5/SAP Fiori, CRM Web Client UI, and Web Dynpro ABAP.

Let’s begin

Configuration to achieve masking

Logical Attribute is a functional modelling of how any attribute such as Social Security Number, Bank Account Number, Amounts, Pricing information, Quantity etc. should behave with masking.

Configure Logical Attribute – Follow the given path:
SPRO -> SAP NetWeaver -> UI Data Protection Masking for SAP S/4HANA -> Maintain Metadata Configuration -> Maintain Logical Attributes

PO Approval Status

Total Gross Amount

Total Net Amount

Total Tax Amount

Maintain Technical Address

In this step, we will associate the Technical Address of the fields to be masked with the Logical Attributes.

You can get the Technical Address of a Web Dynpro ABAP field by pressing “Right-Click” on the field and then click on “Technical Help” option

Follow the given path:

SPRO -> SAP NetWeaver -> UI Data Protection Masking for SAP S/4HANA -> Maintain Metadata Configuration -> Maintain Technical Address

Follow below mentioned steps:

Under “Web Dynpro Field Mapping”, maintain technical address for following fields.

  • Click on “New Entries” button
  • Enter “Application Name” as “FPM_BOL_EPM_PO_OVP”
  • Enter “Component Name” as “FPM_OVP_COMPONENT”
  • Enter “View Name” as “MAIN“
  • Select “Type” as “Floorplan Manager“
  • Enter “Component Configuration” as “FPM_BOL_EPM_PO_OVP“
  • Enter “Field ID” as “_GENP_BF7D034DE2168E31E10000000A4286B5“
  • Enter “Logical Attribute” as “LA_TOTAL_GROSS_AMT”
  • Enter “Description of Web Dynpro Mapping” as “Total Gross Amount”
  • Click on “Save” button
  • Click on “New Entries” button
  • Enter “Application Name” as “FPM_BOL_EPM_PO_OVP”
  • Enter “Component Name” as “FPM_OVP_COMPONENT”
  • Enter “View Name” as “MAIN“
  • Select “Type” as “Floorplan Manager“
  • Enter “Component Configuration” as “FPM_BOL_EPM_PO_OVP“
  • Enter “Field ID” as “_GENP_C07D034DE2168E31E10000000A4286B5“
  • Enter “Logical Attribute” as “LA_TOTAL_NET_AMT”
  • Enter “Description of Web Dynpro Mapping” as “Total Net Amount”
  • Click on “Save” button
  • Click on “New Entries” button
  • Enter “Application Name” as “FPM_BOL_EPM_PO_OVP”
  • Enter “Component Name” as “FPM_OVP_COMPONENT”
  • Enter “View Name” as “MAIN“
  • Select “Type” as “Floorplan Manager“
  • Enter “Component Configuration” as “FPM_BOL_EPM_PO_OVP“
  • Enter “Field ID” as “_GENP_C17D034DE2168E31E10000000A4286B5“
  • Enter “Logical Attribute” as “LA_TOTAL_TAX_AMT”
  • Enter “Description of Web Dynpro Mapping” as “Total Tax Amount”
  • Click on “Save” button
  • Click on “New Entries” button
  • Enter “Application Name” as “FPM_BOL_EPM_PO_OVP”
  • Enter “Component Name” as “FPM_OVP_COMPONENT”
  • Enter “View Name” as “MAIN“
  • Select “Type” as “Floorplan Manager“
  • Enter “Component Configuration” as “FPM_BOL_EPM_PO_OVP“
  • Enter “Field ID” as “_GENP_C37D034DE2168E31E10000000A4286B5“
  • Enter “Logical Attribute” as “LA_PO_APPROV_STATUS”
  • Enter “Description of Web Dynpro Mapping” as “PO Approval Status”
  • Click on “Save” button

Policy Configuration

A Policy is a combination of rules and actions which are defined in one or more blocks. The actions are executed on a sensitive entity (field to be protected) which has to be assigned to a Policy. The conditions are based on contextual attributes which help derive the context.

Context Attributes are logical attributes which are used in designing the rules of a policy. They are mapped to fields which are used to derive the context under which an action is to be executed on a sensitive entity.

Sensitive Entities are logical attributes which are sensitive and need to be protected from unauthorized access.

Follow the given path:

SPRO -> SAP NetWeaver -> UI Data Protection Masking for SAP S/4HANA -> Data Protection Configuration -> Maintain Policy Details for Attribute based Authorizations – Follow below mentioned steps:

  • Click on “New Entries” button
  • Enter “Policy Name” as “POL_MASK_PODETAILS”
  • Select “Type” as “Field Level Masking”
  • Select “Application Module” as “M Materials Management”
  • Enter “Description” as “Mask PO Details in WDA”
  • Click on “Save” button

Write following logic into Policy

Maintain Field Level Security and Masking Configuration

Here, we will define how masking will behave with the logical attribute that we created in above step.

Follow the given path:

SPRO -> SAP NetWeaver -> UI Data Protection Masking for SAP S/4HANA -> Data Protection Configuration -> Maintain Field Level Security and Masking Configuration

Follow below mentioned steps:

  • Click on “New Entries” button
  • Enter “Sensitive Entity” as “LA_TOTAL_GROSS_AMT” and press “Enter” key. “Description” and “Application Module” will get populated in corresponding fields
  • Check “Enable Configuration” check-box
  • Select “Attribute Based Authorization” option
  • Enter “Policy Name” as “POL_MASK_PODETAILS”
  • Click on “Save” button
  • Click on “New Entries” button
  • Enter “Sensitive Entity” as “LA_TOTAL_NET_AMT” and press “Enter” key. “Description” and “Application Module” will get populated in corresponding fields
  • Check “Enable Configuration” check-box
  • Select “Attribute Based Authorization” option
  • Enter “Policy Name” as “POL_MASK_PODETAILS”
  • Click on “Save” button
  • Click on “New Entries” button
  • Enter “Sensitive Entity” as “LA_TOTAL_TAX_AMT” and press “Enter” key. “Description” and “Application Module” will get populated in corresponding fields
  • Check “Enable Configuration” check-box
  • Select “Attribute Based Authorization” option
  • Enter “Policy Name” as “POL_MASK_PODETAILS”
  • Click on “Save” button

Leave a Reply

Your email address will not be published. Required fields are marked *