“Design Console Access” – A good example of researching

Somebody asked me a questions about the checkbox “Design Console Access” in user creation task in Fusion Application. (In Oracle Identity Manager, OIM). Frankly, I don’t know it either. It sounds too technical. I search it today and found it as a good example of researching.

Firstly, I searched it in google. But it is too difficult to find a quick and good information to locate the answer.

Then, I search it in Oracle Help, a new repository of Oracle documentation. It is enhanced in cloud time!  http://docs.oracle.com/en/

http://docs.oracle.com/cd/E17904_01/doc.1111/e14316/usr_mangmnt.htm#OMUSG499
In this page, I searched “Design Console Access” and find the direct answer of “Design Console Access”.

Design Console Access: The user of OIM User type. It can have one of the two possible values, End-User and End-User Administrator. The OIM User type tells whether or not the user can log in to Oracle Identity Manager Design Console. If the “Design Console Access” check box is selected, the user type will be “End-User Administrator” and the user will have access to design console.

But, it is not enough. What is design console? Then, I search the “design console” in the same page. There’s no explanation for “design console”, but there’s some example mentioned it. For example,

Tip:

If the user forgets the password and tries to retrieve it, then the challenge questions are prompted to the user. The user must enter the same answers provided while creating a password. You can configure the challenge questions for the users by using Oracle Identity Manager Design Console.

To configure challenge questions for the user:

  1. Login to Oracle Identity Manager Design Console.

  2. Navigate to Administration, Lookup Definition.

  3. Search for the Lookup for challenge questions, that is, lookup Code = Lookup.WebClient.Questions.

  4. In the Lookup Code Information tab, add questions by entering the appropriate values in the Code Key and Decode fields.

  5. Click Add.

  6. Add this key to the custom resource bundle.

For more information about the Lookup Definition form, see Section 10.3, “Lookup Definition Form” in the Oracle Fusion Middleware Developer’s Guide for Oracle Identity Manager.

Great! It seems that design console sounds like a development tool.  Then, I go to Oracle Fusion Middleware Developer’s Guide for Oracle Identity Manager and search the design console. In the first chapter of developer guide is “Overview of design console” http://docs.oracle.com/cd/E17904_01/doc.1111/e14309/dcintro.htm#OMDEV185

Design console is a development client tool for OIM.

You can use the Design Console to configure system settings that control the systemwide behavior of Oracle Identity Manager and affect its users. The Design Console allows you to perform user management, resource management, process management, and other administration and development tasks.

image

Fusion Application Differentiators

Simplify –

  • Simplified and modernized user interface with Web 2.0.
  • Role-based dashboard brings all relevant information to you in a single place and inform you what’s important
  • Direct self-service access to financial reports
  • Simplified information access.

Standardize –

  • 100% open, standard-based applications and middleware allow you to easily extend existing business process
  • Standardized UI treatment such as collaboration, excel and embedded business intelligence
  • Decision support embedded directly within the context of a transaction for timely, consistent decisions

Centralized –

  • Access to all information on the base of your role
  • Common setup data may be secured and shared across entities by reference set id
  • Centralized business functions like TCA, SLA, tax, etc.

Automate –

  • Automatically present user with all pending tasks, completed tasks, estimated tasks in dashboard
  • With self-monitoring accounts, your accounting system becomes intelligent and alters you to anomalies requiring actions
  • Imaging integration and character recognition capabilities to make invoice entry faster and reduce errors
  • Auto match receipt with your transactions;
  • Extended Excel import features.

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)

downloadattachmentprocessor(1)
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’.
downloadattachmentprocessor(2)
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

downloadattachmentprocessor(3)
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.
downloadattachmentprocessor(4)
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

downloadattachmentprocessor(5)
To create a data role the user first needs to search and pick the relevant data role template.
downloadattachmentprocessor(6)
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.
downloadattachmentprocessor(7)
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.
downloadattachmentprocessor(8)
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’.
downloadattachmentprocessor(9)
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)

downloadattachmentprocessor(10)
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.
downloadattachmentprocessor(11)
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.
downloadattachmentprocessor(11)[1]
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

downloadattachmentprocessor(12)
When in OIM under the ‘Administration’ tab click on the users ‘Advance Search -Users’ section.
downloadattachmentprocessor(13)
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.
downloadattachmentprocessor(14)
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.
downloadattachmentprocessor(15)
The above example shows the user assigning basic BU access data role for BU ‘NC BU110’ to the login user ‘FIN_SUPERUSER’.
downloadattachmentprocessor(16)
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

downloadattachmentprocessor(17)
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.
downloadattachmentprocessor(18)
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.

image

 

Example:

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

Description

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)

image

image

 

The relationship between job role and application rule:

image

The relationship between application role and entitlement:

image

The relationship between entitlement and resource:

image

(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)