Building an Effective SoD Ruleset for S/4HANA: A Practical Guide
2026-01-20

Building an Effective SoD Ruleset for S/4HANA

If you're migrating to S/4HANA and planning to copy-paste your existing SoD ruleset, stop right there. The authorization landscape has fundamentally changed, and your carefully crafted ECC matrix will miss critical risks while flagging conflicts that no longer exist.

This guide walks you through building an SoD ruleset that actually works in S/4HANA - one that covers the new technical layers, addresses emerging business risks, and avoids the false positive nightmare that plagues many migrations.


Why Your ECC SoD Matrix Falls Short

S/4HANA isn't just SAP with a new interface. The authorization architecture has been redesigned from the ground up, creating challenges at both the business and technical levels.

The Business Layer Has Changed

S/4HANA introduces capabilities that simply didn't exist in ECC:

  • Flexible approval workflows that users can configure from their browser
  • Centralized Business Partner model replacing separate vendor and customer masters
  • Extended budget controls with real-time commitment checks
  • Embedded analytics giving users access to data previously locked in reports

These new capabilities mean users can now do things that were impossible before - and your old ruleset doesn't account for any of them.

Example: In ECC, workflow configuration required basis access and custom development. In S/4HANA, a user with the right Fiori app can modify approval thresholds and routing rules directly. If your ruleset doesn't flag "Workflow Configuration" + "Transaction Execution" as a conflict, you have a gap.

The Technical Layer Has Changed

Here's where most organizations struggle. In ECC, access control was relatively straightforward: check if the user has the transaction code and relevant authorization objects. Done.

In S/4HANA, a single business action might involve:

  1. Fiori Launchpad access (Spaces and Pages)
  2. Fiori app authorization (catalog assignment)
  3. OData service permissions (S_SERVICE authorization object)
  4. Backend authorization objects (the classic checks)
  5. CDS view restrictions (for analytical apps)

Missing authorization at any layer blocks the action entirely. But here's the problem: your SoD analysis needs to consider all these layers to accurately identify conflicts.


The Multi-Layer Authorization Challenge

Let's make this concrete with an example.

Scenario: You want to check if a user can create purchase orders.

In ECC:

Transaction: ME21N
Auth Objects: M_BEST_BSA, M_BEST_EKO, M_BEST_EKG, M_BEST_WRK

In S/4HANA with Fiori:

Fiori App: Manage Purchase Orders (F0842A)
OData Service: MM_PUR_PO_MAINT_V2_SRV
Backend Auth: S_SERVICE (for OData), plus classic auth objects
Catalog: SAP_MM_BC_PO_PROCESS_PC
Space/Page: Procurement workspace

If your SoD matrix only covers the transaction code, you'll miss users who have Fiori-only access. If it only covers the Fiori app, you'll miss users who still access via SAP GUI.

What This Means for Your Ruleset

Your SoD functions need to include both classic transactions AND their Fiori equivalents. And those Fiori apps need to map to their underlying OData services.

A modern S/4HANA function definition looks like this:

Function: Purchase Order Creation
Classic Access
- Transaction: ME21N
- Transaction: ME22N
Fiori Access
- App: Manage Purchase Orders (F0842A)
- App: Create Purchase Order - Advanced (F1943)
OData Services
- MM_PUR_PO_MAINT_V2_SRV
- MM_PUR_PO_ADV_CREATE_SRV
Authorization Objects
- M_BEST_BSA, M_BEST_EKO, M_BEST_EKG
- S_SERVICE (SRV_NAME, SRV_TYPE)

New Risk Categories to Consider

S/4HANA introduces risk categories that didn't exist in ECC. Your ruleset needs to account for these.

1. Workflow Configuration Risks

Users who can configure approval workflows AND execute the transactions those workflows govern can effectively approve their own work. This is a critical risk that many organizations miss.

RiskFunction AFunction B
Workflow Self-ApprovalConfigure Purchase Approval WorkflowCreate Purchase Orders
Workflow BypassModify Approval ThresholdsProcess Payments
Workflow Master DataMaintain Workflow AgentsExecute Controlled Transactions

2. Master Data Ownership Risks

S/4HANA's unified Business Partner model creates new conflict patterns:

RiskFunction AFunction B
BP + PaymentsBusiness Partner MaintenancePayment Execution
BP + Sales OrdersBusiness Partner MaintenanceSales Order Processing
BP + Credit DecisionsBusiness Partner MaintenanceCredit Management

3. Configuration vs. Execution Risks

More configuration happens through Fiori apps than ever before:

RiskFunction AFunction B
Pricing ConfigMaintain Pricing ConditionsCreate Sales Orders
Tax ConfigMaintain Tax CodesPost Financial Documents
Output ConfigConfigure Output ManagementProcess Transactions

4. Cross-Module Integration Risks

S/4HANA's tighter integration creates risks spanning module boundaries:

RiskFunction AFunction B
FI-MM IntegrationVendor Invoice PostingGoods Receipt
CO-FI IntegrationCost Center SettlementJournal Entry Posting
SD-FI IntegrationBilling Document CreationRevenue Recognition

Building Your S/4HANA Ruleset: Step by Step

Step 1: Audit Your Current Matrix

Before building anything new, understand what you have:

  • How many risks does your current matrix contain?
  • What technical objects are defined (just T-codes, or auth objects too)?
  • When was it last updated? Many organizations are running matrices defined 10+ years ago
  • What's missing? Run your matrix against a test system - how many known risks does it catch?

Step 2: Identify Your Fiori Footprint

Document every Fiori app deployed in your environment:

  1. Extract your Fiori catalog assignments
  2. Map apps to their underlying OData services
  3. Identify apps that replace classic transactions
  4. Flag apps with no ECC equivalent (new risks)

Pro tip: SAP provides roughly 200 Fiori apps in their standard SoD content. A comprehensive enterprise deployment typically uses twice that number. Make sure your ruleset covers your actual usage, not just the standard.

Step 3: Expand Function Definitions

For each function in your matrix, add the S/4HANA technical objects:

Before (ECC-style):

Function: Vendor Master Maintenance
- XK01, XK02, FK01, FK02
- F_LFA1_BUK, F_LFA1_AEN

After (S/4HANA-ready):

Function: Vendor Master Maintenance
Classic:
- XK01, XK02, FK01, FK02
- F_LFA1_BUK, F_LFA1_AEN

Fiori Apps:
- Manage Business Partner (F1594)
- Supplier Factsheet (F2723)

OData Services:
- API_BUSINESS_PARTNER
- FAC_SUPPLIER_FACTSHEET_SRV

Additional Auth:
- S_SERVICE
- BOBF authorization objects

Step 4: Add New Risk Categories

Review the risk categories above and add relevant rules for:

  • Workflow configuration conflicts
  • Business Partner risks
  • Configuration vs. execution patterns
  • Cross-module integration risks

Don't go overboard - focus on risks that match your actual business processes. A manufacturing company needs different rules than a financial services firm.

Step 5: Address False Positives

Here's a challenge unique to S/4HANA migrations: your analysis might flag risks that can't actually be exploited.

Common false positive scenarios:

ScenarioWhy It's a False Positive
User has T-code but no Fiori accessCan't execute if Fiori is the only interface
User has Fiori app but missing OData serviceTransaction will fail at runtime
User has auth objects but no catalog assignmentCan't launch the app

MTC Skopos handles this by analyzing executable access - checking that users have all required layers, not just individual components. This dramatically reduces noise in your analysis results.

Step 6: Establish Ongoing Governance

Your ruleset isn't a one-time deliverable. It's a living document that needs regular updates:

Quarterly reviews:

  • New Fiori apps deployed
  • Changed business processes
  • Organizational restructuring

Trigger-based updates:

  • S/4HANA upgrade or feature pack
  • New module implementation
  • Custom development deployment
  • Audit findings

Annual comprehensive review:

  • Full matrix walkthrough with business owners
  • Regulatory requirement alignment
  • Risk rating recalibration
  • Industry benchmark comparison

Common Pitfalls to Avoid

1. Copy-Paste from ECC

Your ECC matrix was built for a different architecture. Treating it as a foundation rather than a starting point leads to incomplete coverage and false confidence.

2. Ignoring OData Services

Many organizations add Fiori apps to their matrix but forget about OData services. Since S_SERVICE authorization is often granted broadly, this creates blind spots.

3. Over-Engineering

Not every theoretical risk needs a rule. Focus on conflicts that:

  • Represent material business risk
  • Align with your regulatory requirements
  • Match your actual business processes

A 500-rule matrix that's accurate beats a 2,000-rule matrix full of noise.

4. Set and Forget

S/4HANA evolves rapidly. SAP releases new apps quarterly. Your business processes change. A static ruleset becomes obsolete fast.


Automating Your S/4HANA SoD Analysis

Manual ruleset maintenance and conflict detection doesn't scale. Modern organizations need tooling that:

  • Imports existing rulesets and helps expand them for S/4HANA
  • Understands Fiori architecture including apps, catalogs, and OData services
  • Analyzes executable access across all authorization layers
  • Reduces false positives by validating complete access paths
  • Supports simulation to test ruleset changes before deployment

MTC Skopos for S/4HANA

MTC Skopos was built with S/4HANA's complexity in mind:

  • Comprehensive Fiori coverage - import your apps, map to services, analyze holistically
  • Multi-layer analysis - checks transaction codes, Fiori apps, OData services, and auth objects
  • Executable access focus - flags only conflicts users can actually exploit
  • Simulation engine - test ruleset changes against your real user population
  • Flexible rule definitions - define functions using any combination of technical objects

Ready to Modernize Your Ruleset?

Start Free 14-Day Trial

Import your existing matrix, expand it for S/4HANA, and run your first analysis - all without complex setup or consulting engagements.


Ruleset Maintenance Checklist

Use this checklist when reviewing your S/4HANA ruleset:

Technical Coverage

  • All deployed Fiori apps mapped to functions
  • OData services included in function definitions
  • S_SERVICE authorization object considered
  • CDS view restrictions documented (if applicable)
  • Custom apps and services included

Business Coverage

  • Workflow configuration risks defined
  • Business Partner conflicts addressed
  • Cross-module integration risks covered
  • Configuration vs. execution patterns included
  • Industry-specific risks documented

Quality Assurance

  • False positive rate acceptable (<10%)
  • Risk ratings aligned with business impact
  • Business owner sign-off obtained
  • Regulatory requirements mapped
  • Exception process documented

Governance

  • Quarterly review scheduled
  • Change trigger process defined
  • Version control established
  • Audit trail maintained

Conclusion

Building an effective SoD ruleset for S/4HANA requires rethinking your approach from the ground up. The days of transaction-code-only matrices are over. Modern rulesets must span multiple authorization layers, address new risk categories, and evolve continuously.

The investment is worth it. A well-designed ruleset becomes your strongest defense against access risks - catching conflicts before they become audit findings, and enabling business agility without compromising control.

Start with your current matrix, expand systematically for S/4HANA's architecture, and establish governance to keep it current. With the right approach and tooling, you can build a ruleset that protects your organization while supporting - not hindering - your S/4HANA transformation.


« All posts