4. Fiori App Builder (FAB) installation packages, roles and authorization objects
This section explains the SAP related activities that require attention for Fiori App Builder setup.
Please note that for the installation packages:
- FE refers to Front end server
- BE refers to Back end server
4.1. Installation Packages
The FAB Product is deployed in the development packages /IQX/FAB, /IQX/FAB_COMMON, /IQX/FAB_NON_GW, /IQX/FAB_APP_GEN, /IQX/FAB_INTERACTIVE (only available for SAP NW 7.4 and above). Regardless of the selected deployment option as described in section 1 (see above), FAB is always delivered in targeted packages for the Backend or Frontend servers.
The deployment of the FAB environment (development package /IQX/FAB) consists of:
- BE Installation Package contains all of the Backend objects in the /IQX/FAB package.
ECC_K-YYYCOINIQX.SAR where YYY = FAB Version
- FE Installation Package contains all of the Front end objects in the /IQX/FAB package.
GW_K-YYYCOINIQX.SAR
4.2. Customer Specific Development Object
It is recommended that a new package is created for customer-specific FAB development. This will be required when the FAB provided superclass is extended (inherited).
We recommend naming this class ZFAB for consistency. Please set up your own custom package for FAB extensions in both the Front end and back end SAP systems. This package will hold your custom extensions and development to support the Apps that you develop using FAB.
The package will also hold any additional gateway services that you may require for your custom app development.
4.3. Users, roles and authorization objects
Certain authorization objects are required on the Backend and Frontend servers in addition to the application roles required for the specific FAB app. IQX has documented these for your reference. The authorizations may be implemented as recommended below or to your own role and naming convention using PFCG.
4.3.1. Implementing App-Specific FAB Authorisation /IQX/FAB
App-specific authorization can be invoked by the selection of the Authorization Checkbox on the Properties screen and providing a value in the Auth. Group field in the FAB Workbench.
This setting mandates checks to the FAB delivered authorization object /IQX/FAB.
Authorisation Object: /IQX/FAB (SU21)
Allowed activities:
01 – Create New Instance
02 – Change Instance
03 – Display Instance
04 – Delete Instance
11 – Workbench create
12 – Workbench edit
13 – Workbench display
Authorisation Group
Multiple values, free text entry, support wildcard entry patterns eg FI*
Sample implementations
Functionality | /IQX/FAB-/IQX/ACTVT values | /IQX/FAB-BEGRU values |
Ability to Create, Change and Display FAB instances for Apps having Authorisation Group value of FI | 01, 02, 03 | FI |
Access to create Apps in the workbench | 11 | * |
Access to Edit and Display in the workbench for apps having Authorisation Group value of SD | 12 and 13 | SD |
Activity 11 is the main authorization required for a developer to have access to create an app
from the workbench (TCODE /IQX/FAB). This is implemented in the role /IQX/CONFIG (Section
4.3.3)
4.3.2. FAB Generic User Roles
Assign to who: All users that will use the applications generated by FAB
Where to assign: All systems installed with FAB
4.3.2.1. Backend
Role Name: /IQX/END_USER
Authorization Objects defined for the role are:
- /IQX/FAB
- S_SERVICE
- S_PERSONAS
- S_RFC
- S_RFCACL
Further restriction to the authorization object /IQX/FAB can be implemented. Depending on the security/access requirement, the role can be implemented multiple times and in separate roles having different combination values for /IQX/FAB.
Role Name | /IQX/FAB-/IQX/ACTVT values | /IQX/FAB-BEGRU values |
/IQX/END_USER_FI | 01, 02, 03 | FI |
/IQX/END_USER_MM | 01, 02, 03 | MM |
Important
S_RFCACL (Trusted RFC) authorization value should be limited to the calling system which is the SAP Gateway system. Please refer to the SAP Note 1416085 for further details.
Services that users should be having access to, in addition to the /IQX/* services, must be added in the S_SERVICE authorization object values
Role template: IQX_END_USER.txt
4.3.2.2. Frontend
Role Name: /IQX/END_USER_GW
Authorization object defined for the role is S_SERVICE.
Important
Role template/upload file: IQX_END_USER_GW.txt
4.3.3. FAB Developer / Cutover Roles (Install on GW and Backend)
Assign to who: Developers and consultants who will perform the configuration
Where to assign: All systems installed with FAB with a limited validity period in the production environment
Role Name: /IQX/CONFIG
The same set of authorization for Backend and Frontend systems. Critical authorization defined is /IQX/FAB and important TCODEs are /IQX/FAB, /IQX/FAB_CONFIG and /IQX/FAB_ANALYSIS.
The role has all activities for /IQX/FAB and this is the main reason why it should only be assigned for a limited period in the production environment.
Role template/upload file: IQX_CONFIG.txt
4.3.4. FAB Support Roles (Install on GW and Backend)
Assign to who: Users, usually developers/consultants, that will provide support in the Production environment
Where to assign: Production environment where FAB is installed.
Role Name: /IQX/SUPPORT
The same set of authorization for Backend and Frontend systems. Critical authorization defined is /IQX/FAB and important TCODEs are /IQX/FAB_CONFIG and /IQX/FAB_ANALYSIS.
Authorization for /IQX/FAB activity is limited to 03 (Display Instance) only
Role template/upload file: IQX_SUPPORT.txt
4.4. Trust relationship, set up and testing using SM59.
For a Hub deployment, a trust relationship is required between the BE and FE servers. This enables communication between the two servers. The trust relationship is achieved by setting up the same user in both the BE and FE servers and then testing the connection using SM59. Refer to section 4.3.2.1 for details on the authorization/role implementation related to trusted RFC.
First of all, you will need to create a user (in this case IQX_FABUSER ) to use in the Trusted Relationship. This can be done in transaction SU01. Then, you need to assign the authorization object S_RFCACL to this user.
Refer to detailed documentation in this link: https://wiki.scn.sap.com/wiki/display/ABAPConn/Create+an+RFC+trust+relationship+between+2+SAP+systems+-+A+step-by-step+guide
Suggested RFC connection name set up in BE server using SM59. Choose your own RFC name and add suffix ‘_FE’. Set Logon and Security to Current User. In Technical Settings set Target host to FE server.
Suggested RFC connection name set up in FE server using SM59. Choose your own RFC name and add suffix ‘_BACK’. Set Logon and Security to Current User. In Technical Settings set Target host to BE server.
Do a Connection Test and a Remote Logon test.
IQX Business Solutions - FAB 3.10