Skip to main content

Smarter Permission Set Design in IFS Cloud


Jimmy K
Do Gooder (Partner)
Forum|alt.badge.img+2
  • Do Gooder (Partner)
  • 8 replies

I originally shared this on LinkedIn — Smarter Permission Set Design in IFS Cloud — and it seemed to resonate with a lot of folks, so I figured it was worth a share here as well.

Hope you find it useful! Feel free to connect with me on LinkedIn and swap ideas.

Most ERP teams don’t think twice about how they structure permissions — until the week before go-live or the day the system breaks.

If you've ever worked on an IFS Cloud implementation and suddenly hit a wall when assigning roles to users, you’ve may have encountered the Oracle role limitation. It’s a quiet constraint — but a critical one. Each user can only be granted around 48 roles, including both END_USER and FUNCTIONAL permission sets.

In large, complex organizations, or even just well-designed implementations, it's surprisingly easy to hit that ceiling.

After navigating these challenges on multiple projects, I want to share a framework that’s helps us stay organized, scalable, and within Oracle's limits — without compromising access or maintainability.

The Problem with Mega Roles

A common shortcut is to assign sweeping roles like FR_P2P or FR_WHSE_MGMT that grant access to entire modules — procurement, warehouse, AP, etc. At first, this seems efficient.

But soon, those roles:

 

  • Become impossible to maintain
  • Lead to over-permissioned users
  • Obscure who can access what (an audit nightmare)
  • Increase risk of hitting the Oracle limit

Worse, when you need to troubleshoot or tweak access, these mega-roles give you no clear place to start.

The Better Approach: Granular + Modular

Instead of assigning roles based on modules, design your roles around business responsibilities and subprocesses.

Step 1: Define Business Roles (END_USER Sets)

These are high-level user groups like:

 

  • Buyer
  • Warehouse Clerk
  • AP Clerk
  • Shipping/Receiving Manager

Step 2: Build Functional Roles

Each END_USER role is made up of reusable, task-specific FUNCTIONAL roles. Examples:

 

  • FUNC_PUR_ORDER_CREATE: Create new POs
  • FUNC_PUR_ORDER_APPROVE: Approve POs
  • FUNC_PO_VIEW: View PO details
  • FUNC_WHSE_COUNTING: Perform physical counts
  • FUNC_WHSE_ANALYTICS: Access inventory history and reports

These are modular, easy to assign, and even easier to audit.

Use the Navigator as a Blueprint

Here’s a trick I’ve found effective: use Level 2 of the IFS Navigator structure to define your functional roles. IFS already breaks its processes down into logical folders — just follow that lead.

For example:

 

  • Warehouse Management>Counting >Warehouse Management>Quantity in Stock
  • Warehouse Management>Transaction History >Warehouse Management>Location
  • Warehouse Management>Part >Warehouse Management>Handling Units
  • Shipment Management>Outbound Shipment
  • Shipment Management>Inbound Shipment

You can grant permissions to these Functional Roles via the Manage by Navigator command, making this strategy both scalable and consistent.

Read-Only vs Full Access

When designing roles, it's often valuable to distinguish between read-only and read/write access.

Example:

 

  • FUNC_PUR_ORDER_MANAGE – create/edit/release POs
  • FUNC_PUR_ORDER_VIEW – view POs without editing

Use Grant for full access and Grant Query for read-only in your functional roles.

This allows you to safely give visibility to roles like AP or Finance without exposing sensitive actions.

Stay Under the Oracle Limit

The limit is ~48 roles per user (Oracle database roles, not an IFS-specific constraint).

Safe Targets:

 

  • 30–35 functional roles system-wide
  • 5–10 functional roles per END_USER set
  • Max 1 END_USER permission set per user

Track role counts with a spreadsheet or role matrix — and avoid assigning both functional and end-user sets directly to users.

Why This Matters

A well-designed permission strategy doesn’t just keep things neat — it:

 

  • Makes onboarding faster
  • Improves audit transparency
  • Reduces the risk of privilege creep
  • Keeps your implementation stable and scalable

I’ve found that spending extra time upfront on permission set design pays off tenfold later — during UAT, go-live, audits, and user support.

Let’s Keep the Conversation Going

Are you working through permission strategy in IFS Cloud or another ERP?

What challenges are you facing? How are you managing read-only vs. full access, or preventing role sprawl?

Drop your thoughts in the comments or connect with me directly — always happy to share what’s worked (and what hasn’t).

Tags:

#IFSCloud #ERP #Permissions #Oracle #RoleDesign #ERPImplementation #IFS #SolutionArchitecture

5 replies

Forum|alt.badge.img+7
  • Sidekick (Customer)
  • 47 replies
  • May 20, 2025

@Jimmy K 

Is the limit on the number of roles a user can have in Oracle 48 or 148?


Forum|alt.badge.img+12
  • Hero (Customer)
  • 324 replies
  • May 22, 2025
VPPEKANATHI wrote:

@Jimmy K 

Is the limit on the number of roles a user can have in Oracle 48 or 148?

 

It’s 148.

 

Also, are we sure that this limit even applies in Cloud ?

 

In Cloud, as far as I’m aware, end users no longer have a matching Oracle Account, and the security checks are all done through the Middleware. The Oracle account actually performing the transaction is IFSSYS (a super privileged user), while the end user username is derived through Sys_Context. You only get to that point if the security checks that your user has actual access to the projection and/or projection/entity action.

 

In fact, in Cloud, creating a permission set does not create a new Role in Oracle proper. It does create an entry in fnd_role, of course, but not an actual Oracle defined Role.

 

 

 

These are the actual roles in a Cloud Instance, and as you can see these are not at all the same as the permission sets anymore, as perm sets no longer create an Oracle Role.

 

This is why you can’t see any of the OOTB base perm sets such as FND_% for instance.

 

So as far as I’m concerned there really shouldn’t be any 148 Oracle limit ever reached in Cloud anymore, unless IFS has specifically implemented a manual limit on the number of roles a user can be granted.


Forum|alt.badge.img+7
  • Sidekick (Customer)
  • 47 replies
  • May 23, 2025

@SimonTestard  Thanks for the explanation.


Forum|alt.badge.img+12
  • Hero (Employee)
  • 142 replies
  • May 23, 2025

I also heard that a customer was using Scope Tool Process ID's to setup the permission sets. Thought that was quiet brilliant, that might even be the key to simplifying the setup.

 


Forum|alt.badge.img+4
  • Do Gooder (Customer)
  • 24 replies
  • July 10, 2025

Love this permissions setup. I have run a similar methodology on our permissions for the last 5 years (minus the oddball exception of course).  


Reply


Cookie policy

We use cookies to enhance and personalize your experience. If you accept you agree to our full cookie policy. Learn more about our cookies.

 
Cookie settings