Tag Archives: data role

Create Data Roles for Business Units

This example will show a case where a user creates a Business Unit but no data roles are created so they have to create and assign them manually. The various stages will be broken down into the following headings:

  • Create Basic Business Unit (BU)
  • Check if BU Data Roles have been created
  • Create Data Roles
  • Synchronize Oracle Identity Manager (OIM) with Authorization Policy Manager (APM)
  • Assign Data Roles to Login User
  • Check Access to BU

Create Basic Business Unit (BU)

After picking the ‘Define Business Units’ task list create Business Unit. Then save and close. Note This user has created a new default set called ‘NC_BU110S’. It will hold any new set_id data used by the BU ‘NC BU110’.
Once the initial BU has been created Business Functions need to be assigned. Assigning functions to a BU should automatically create the related data role. In the above example the user is assigning Receivable functionality to a BU named ‘NC BU110’.

Check if BU Data Roles have been created

Check if the BU is available to pick when configuring the relevant module. In this worked example the user has chosen the receivable functionality. If they cannot pick ‘NC BU110’  when configuring the receivables system options then it’s likely the relevant data role has either not been created or not assigned.
To check if the data role exists log into the Authorization Policy Manager (APM) module. Under the ‘Authorization Management’ tab click on the Search External Roles.
For the basic BU setup there should be two data roles created under the ‘Financial Application Administrator’ role. One will be for the basic BU access and the other for the BU set_id access. In the above case neither role has been created ‘NC BU100’ BU.
For each functionality there will be additional roles required. An example will be shown in the latter steps of this document.

Create Data Roles

To create a data role the user first needs to search and pick the relevant data role template.
There are two templates used for the minimum BU usage these are:
FinancialsFunBusinessUnit = used for basic BU setup
FinancialsFunSetIdFinancialsFunSetId = BU SetId usage
In this example as we have assign receivable functionality there should be 2 additional templates which are:
BillingRevMgtandCustPayment = Basic AR setup
FinancialsArSetIdFinancialsArSetId = AR SetId
Once the correct template is shown the user needs to highlight the required template then click on open.
Once the template has been opened the user can view existing data roles. If they want to create new roles then they need to click on ‘Generate Roles’ as shown above.
Once the ‘Generate Roles’ has completed the user can click on ‘refresh role’ under ‘valid roles’, In the above example it shows a data role for basic BU usage has been successfully created – ‘FUN_FINANCIAL_APPLICATION_ADMINISTRATOR_JOB_NC BU110’.
When the FinancialsFunSetIdFinancialsFunSetId template is used it will create set_id data role called ‘FUN_FINANCIAL_APPLICATION_ADMINISTRATOR_JOB_NC BU110S’.
As this example is using receivables functionality when the template FinancialsArSetIdFinancialsArSetId is used to generate data roles then all AR roles will have a set_id role created for them. As as shown above.

Synchronize Oracle Identity Manager (OIM) with Authorization Policy Manager (APM)

Once the data roles have been successfully created in APM they then need to be copied over to OIM. To do this you can either run ‘LDAP Role Create and Update Full Reconciliation’ or ‘LDAP Role Create and Update Reconciliation’ program. To run either program you will need to go into OIM and click on the ‘Advance’ icon as shown above.
Once in OIM’s Advance Administration section pick the ‘System Management’ tab then select either of the LDAP reconciliation scheduled jobs. Now double click on the chosen job to open up it’s parameters.
After opening the parameters section of the job click on ‘Run Now’. This will then copy all the successfully created data roles from APM into OIM.  The next step will to assign these data roles to a login user.

Assign Data Roles to Login User

When in OIM under the ‘Administration’ tab click on the users ‘Advance Search -Users’ section.
In this example the user would like the login user ‘fin_superuser’ to be able to use the BU ‘NC_BU110’. Therefore they will need to assign these roles to this login user. Once the user has found ‘fin_superuser’ they will need to pick this user in the research results field then click on open.
Once the user is in the required login user. Here it is showing the ‘FIN_SUPERUSER’ tab. Then click on the assign icon to pick which roles you want assigned.
The above example shows the user assigning basic BU access data role for BU ‘NC BU110’ to the login user ‘FIN_SUPERUSER’.
As the user has assigned Receivable functionality to this BU they also need to assign the AR roles ,such as the ‘AR_BILLING_MANAGER’, to this login user.

Check Access to BU

To show the user now has access to the newly created  ‘NC BU110’ BU they can go to any AR configuration step to see if this BU is available in the LOV. Here the user has chosen the ‘Receivable Activities’ task.
The data roles have correctly been created and assign as they are now able to pick BU ‘NC BU110’.

Oracle Fusion Application Security Overview

Oracle fusion application security mechanism is designed on the base of role-based access control (RBAC). Oracle recommend to implement roles with functional security and data security and then assign roles to user, which bring benefits from maintenance and reusability. We should not directly assign functional security and data security to user, even though it looks ok from technical perspective.

First, let’s have a look at the Oracle recommended security setup process with a real business scenario, and then have a review of Oracle fusion security architecture and concept for further understanding.

Oracle recommended Security Setup Process, which is the most safe for your implementation.

Considering you have a financial manager called Ning  Yun, who is responsible for all financial modules as a manager role in business unit A, B, C, Ledger X, Y, and asset book Z.

1. Create a user ning with person information (generally employee information). A person will auto created in HCM. Or you can create person in HCM and user will be auto created.

2. You should have had job roles, like general ledger manager, payables manager, receivables manager, etc. in your system, generally they are predefined by oracle.

3. Create data roles for above job roles through data role template. Or the data role can be generated automatically when you create BU, asset book, GL data access set.

4. Assign the necessary data role to user.

I recommend that you always generate data role by data role template or generate automatically and NOT try to generate your own data security, because it is not completed. If you try to research the Oracle-predefined data role template, it is very complex. You can duplicate it by data security easily. So, always use data template or auto generation.


Oracle fusion security architecture and concepts

Functional Security:

1. Resource: Very technical concept that the technical components used by privilege.

2. Entitlement (Privilege): A task/action of duty role. An entitlement is one or more allowable actions applied to a set of database resources.

3. Application Role (Duty/Duty role):  Duty roles cannot be provisioned directly to users, but are inherited by enterprise roles to control access to applications. Duty roles may carry both function and data security grants.

4. External Role (Job/Job role): Specific to a job, and controls access to functions through inherited duty roles that carry the entitlement necessary for performing specific tasks associated with the duties of the job, such as access for a procurement manager.

5. User: application user registered in system.

Data Security

6. Database resource:  A database resource specifies access to a table, view, or flexfield that is secured by a data security policy.

7. HCM Security Profile: HCM data roles are generated using the Manage Data Roles and Security Profiles task, which uses HCM security profiles, not data role templates, to define the data security condition.

8. Data role template: You use data role templates to generate data roles. You generate such data roles, and create and maintain data role templates in the Authorization Policy Manager (APM).

Data Role (Also external role in APM): Specific to a job within a dimension of data, and augments the inherited abstract, duty, or job roles with entitlement to access specific data, such as access for a procurement manager in a particular business unit. Job role with data security.




External Role/Job Role: Accounts Payable Manager (which is mapping to real AP manager in business)

Duties assigned directly and indirectly to the job role Accounts Payable Manager

Application Role/Duty Role


Accounts Payable Managerial Analysis Duty: Analyzes Invoices and related documents along with Payments, Holds  Discounts, and Payables Balances

Accounts Payable Period Status Management Duty: Manages Oracle Fusion Payables period status.

Accounts Payable Period Status Review Duty: Reviews Oracle Fusion Payables period status.

Actual Procurement Cost Collection Duty: Subscribes to costing service for interfacing invoice transactions to receipt accounting.


The relationship between external role (data role) and job role: (first page for functional hierarchy, second page for data security)




The relationship between job role and application rule:


The relationship between application role and entitlement:


The relationship between entitlement and resource:


(From my own opinion, the security mechanism, especially data security is very complex in current version of Fusion Application, so please always use data role template or auto-generation. That’s enough)