Skip to main content

Configuring Role Permissions

Temenos Explorer uses the roles defined for a user in Keycloak but augments these roles with additional configuration that includes access to menu items and application actions.

For a newly created role you will need to add a new entry into the Temenos Explorer permissions configuration to allow users with this role to access the required menu items and to be able to perform specific actions within your application.

Configuration

Role permissions are located in /TemenosExplorer/public/TA_permissions.js and are explained below:

Top Level Config

All role permission entries are added into the Roles array within the PERMISSIONS object:

const PERMISSIONS = 
{
"Roles": [
/* Add role permissions configuration here */
]
}

Role Permission Object

Each role must have an role permission object:

{
"RoleId": "SampleUser",
"RoleDescription": "Sample user role with basic permissions",
"TransactRoleId": "ALL",
"LegalEntity": "",
"Startup": "",
"Dashboard": "",
"Menus": "Customers,Accounts",
"Permissions": [],
"ServiceRequests": [],
}

The properties of the role permissions object are as follows:

PropertyTypeDesription
RoleIdstringThe Keycloak role ID
RoleDescriptionstringA description of the role
TransactRoleIdstringThe corresponding Transact role ID, use default value of "ALL"
LegalEntitystringThe T24 company for calls to IRIS APIs, use default value of "" if not required
StartupstringThe ID of the plugin to show on first login
DashboardstringTBC
MenusstringMenus which users in this role are permitted to access (comma delimited)
PermissionsarrayPlugin specific actions which users in this role are permitted to perform
ServiceRequestsarrayTBC

Add Permissions for a New Role

To add permissions for a role in Keycloak, simply add a new role permission object to the Roles array:

{
"RoleId": "SampleUser",
"RoleDescription": "Sample user role with basic permissions",
"TransactRoleId": "ALL",
"LegalEntity": "",
"Startup": "",
"Dashboard": "",
"Menus": "Customers,Accounts",
"Permissions": [
"searchCustomers",
"searchPayments",
"searchProducts",
"searchTransactions",
"secureMessages",
"viewServiceRequest",
"viewAccountActivity",
"viewExternalProducts",
"viewPricing",
"viewProductCatalog",
"viewStandingOrders",
"viewLoanServicing",
"viewDepositServicing",
"viewAccountServicing",
"viewAccountDocuments"
],
"ServiceRequests": [],
}

Please ensure that your role has a unique name and that there is no existing permissions entry with the same RoleId value before adding a new permissions entry.

All menu permissions will be automatically applied by the Temenos Explorer platform and the logged in user will only be able to see menu items applicable to their currently selected role.

Plugin Permissions

Plugin permissions will need to be handled within your own application business logic. To do this you will need to use the isPermissionGranted() method and data stores detailed in the role permissions reference guide.