SoD Conflicts in SAP: Transaction Codes, Authorization Objects & Detection Guide

SoD Conflicts in SAP: Transaction Codes, Authorization Objects & Detection Guide

This article is a practical reference for identifying and detecting SoD conflicts in SAP. If you're looking for an introduction to what Segregation of Duties means and why it matters, start with our SoD fundamentals guide.

Here, we focus on the SAP-specific details: which transaction code combinations create conflicts, which authorization objects actually drive those conflicts, and how to run detection effectively.

SAP SoD conflict reference by module

The conflict examples below illustrate a typical production-grade SoD ruleset. A full SAP ruleset typically covers 300+ SoD risks and 50+ Critical Access risks across 180+ functions, thousands of classic transaction codes, and hundreds of Fiori apps - spanning procurement, finance, sales, HR/payroll, manufacturing, quality management, basis/security, and more. You can download a sample ruleset and import it directly into MTC Skopos.

Procure-to-pay (P2P) - 82 SoD risks

The P2P process contains the highest volume of SoD risks in SAP, with 82 risks (32 High) covering purchasing, receiving, invoicing, and payment functions.

PTP-01 - Vendor Master Maintenance & Invoice Processing (High)

A user who can maintain vendor records AND process invoices could create a fictitious vendor and submit invoices for payment.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
VMNT - Vendor MasterBP, FK01, FK02, FK05, FK06, MK01, MK02, XK01, XK02, XK05F0593, F0871, F1546, F3336F_LFA1_BUK, F_LFA1_APP, F_LFA1_GEN, B_BUPA_RLT
VINV - Invoice ProcessingF-02, F-04, F-43, F-44, MIRO, MIR4, MIR7, FB60, FV60F0859, F0717A, F1339F_BKPF_BUK, F_BKPF_KOA, M_RECH_BUK

PTP-02 - Vendor Master & AP Payments (High)

A user could create a ghost vendor or change bank account details and direct payments to themselves.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
VMNT - Vendor MasterBP, FK01, FK02, FK05, XK01, XK02F0593, F0871, F1546F_LFA1_BUK, F_LFA1_APP, B_BUPA_RLT
VPAY - AP PaymentsF-53, F-58, F110, F-04, F-51, F-52BNK_APPF_REGU_BUK, F_REGU_KOA, F_PAYR_BUK

PTP-03 - Invoice Processing & AP Payments (High)

A user could create a fraudulent invoice and process the payment, particularly risky when alternative payee is available.

FunctionKey TransactionsKey Auth Objects
VPAY - AP PaymentsF-04, F-06, F-07, F-18, F-51, F-52, F-53, F-58, F110F_REGU_BUK, F_REGU_KOA, F_PAYR_BUK, F_AVIK_BUK
VINV - Invoice ProcessingF-02, F-43, F-44, MIRO, MIR4, MIR7, FB60, FV60F_BKPF_BUK, F_BKPF_KOA, M_RECH_BUK

PTP-04 - Purchase Order Create & Approve (High)

A user could raise and approve their own purchase order, bypassing approval workflows.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
PORD - Purchase OrdersME21N, ME22N, ME23N, ME51N, ME52NF0547B, F0752, F0842, F1702, F1982M_BEST_EKG, M_BEST_EKO, M_BEST_WRK, M_BANF_EKG
POAP - PO ApprovalME28, ME29N, ME35M_BEST_EKG, M_BEST_EKO, M_BEST_WRK, M_EINK_FRG

PTP-05 - Purchase Order & Invoice Processing (Medium)

A user could purchase items and process the invoice, resulting in unauthorized payments.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
PORD - Purchase OrdersME21N, ME22N, ME23N, ME28, ME29N, ME51N, ME52NF0547B, F0752, F0842, F1702, F1982M_BEST_EKG, M_BEST_EKO, M_BEST_WRK, M_BANF_EKG, M_BANF_EKO
VINV - Invoice ProcessingF-02, F-43, F-44, MIRO, MIR4, MIR7F0859F_BKPF_BUK, F_BKPF_KOA, M_RECH_BUK

Other High-Risk P2P conflicts commonly found in production rulesets include: PTP-06 (PO + Payment), PTP-07 (PO + Vendor Master), PTP-08 (PO + Blocked Invoice Release), PTP-09 (Goods Receipt + Inventory Count), PTP-10 (Material Master + PO), PTP-11 (Invoice + Bank Reconciliation), PTP-12 (Payment + Bank Reconciliation), PTP-13 (Manual Check + Vendor Master), PTP-04 (PO Create + Approve), PTP-14 (Vendor Account + Bank Reconciliation), PTP-15 (Invoice + Vendor Bank Account + EFT), and PTP-16 (PO + Cost Center).

Financial accounting (FI) - 49 SoD risks

The FI module covers 49 risks (21 High) spanning general ledger, asset accounting, bank master data, cost accounting, project systems, and treasury.

FIN-01 - Journal Entry & GL Master Data (High)

A user who can create GL accounts and post journal entries could set up incorrect accounts and misstate financial statements.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
JRNL - Post Journal EntryF-02, F-03, F-04, FB01, FB50, FB60F0717, F0718, F1119, F1240F_BKPF_BUK, F_BKPF_KOA, F_SKA1_BUK
GLMD - GL Master DataFS00, FSP0, FSS0, EK71, EK72F_SKA1_BUK, F_SKA1_KTP

FIN-02 - Bank Master & AP Payments (High)

A user could create a fictitious bank account and route vendor payments to it.

FunctionKey TransactionsKey Auth Objects
BNKM - Bank Master DataFI01, FI02, FI12, BAUP, F9K1, FIBANF_BNKA_BUK, F_BNKA_MAN, F_CLM_BAM, F_PMT_TRNS
VPAY - AP PaymentsF-53, F-58, F110, F-51, F-52F_REGU_BUK, F_REGU_KOA, F_PAYR_BUK

FIN-03 - Asset Master & Asset Documents (High)

A user could create asset records and process acquisitions, retirements, or depreciation, enabling write-offs and misappropriation.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
AMST - Asset MasterAS01, AS02, AS05, AS11, AS21F1592, F3425A_S_ANLGR, A_S_ANLKL, F_BKPF_BUK
ADOC - Asset DocumentsAB01, ABAA, ABAD, ABAV, ABAW, ABAONA_B_ANLKL, A_B_BWART, F_BKPF_BUK

FIN-04 - Bank Master & Manual Check Processing (High)

A user could create a fictitious bank account and process manual checks to divert payments.

FunctionKey TransactionsKey Auth Objects
BNKM - Bank Master DataFI01, FI02, FI12, BAUP, F9K1, F9K2, FIBANF_BNKA_BUK, F_BNKA_MAN, F_CLM_BAM, F_PMT_TRNS
MCHK - Manual CheckFCH3, FCH4, FCH5, FCH6, FCH7, FCHE, FCHF, FBZ5F_REGU_BUK, F_REGU_KOA, F_PAYR_BUK, F_BKKA_BKA

Other High-Risk FI conflicts include: FIN-05 (Cost Center + Cost Transfer), FIN-06 (Cash Application + Bank Reconciliation), FIN-07 (Asset Master + Goods Receipt), FIN-08–FIN-10 (Project Settlement + Overhead), FIN-11 (Bank Master + Customer Payment), FIN-12 (Treasury Create + Confirm), FIN-13 (Bank Master + AR Payments), FIN-14 (Vendor Invoice + Cost Center), FIN-15 (Bank Master + Treasury), FIN-16 (Vendor Invoice + Asset Master), FIN-17 (Cash Application + Treasury), and FIN-18–FIN-19 (Treasury risks).

Accounts receivable & sales (SD) - 46 SoD risks

The SD module covers 46 risks (23 High) spanning customer master, sales orders, billing, credit management, rebates, and cash application.

OTC-01 - Credit Management & Sales Order Processing (High)

A user who controls credit limits and processes sales orders could exceed credit limits to process unauthorized transactions.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
CRDT - Credit ManagementFD32, FD37, UKM_BP, BPF3163, F3748, F4596F_KNKA_KKB, F_KNKA_MAN, B_BUPA_RLT
SORD - Sales OrdersVA01, VA02, VA03, VL01N, VL02N, VF01, VF02F1119, F1240, F1478, F1510V_KNKK_FRE, V_KONH_VKS, V_VBAK_AAT

OTC-02 - Customer Master & Sales Rebates (High)

A user maintaining customer data and controlling rebate processing could set up fraudulent rebate agreements.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
CMNT - Customer MasterBP, FD01, FD02, FD05, FD06, XD01, XD02, VD01, VD02F0593, F0871, F1546, F3336F_KNA1_BUK, F_KNA1_APP, B_BUPA_RLT
SREB - Sales RebatesVB(6, VB(7, VBN1, VBN2, VBO1, VBO2, VBOF, WAK1F2954V_KONA_VKO, V_VBAK_VKO, V_VBRK_VKO

OTC-03 - Sales Order & Credit Memo Processing (High)

A user could create a sales order, obtain goods, and process a credit memo to reverse the balance.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
SORD - Sales OrdersVA01, VA02, VL01N, VL02N, VF01, VF02F1119, F1240, F1478, F1510, F1814, F4572V_KNKK_FRE, V_KONH_VKS, I_TCODE
CRMM - Credit MemosF-02, F-21, F-27, F-43, FB01, FB50F3068, F5281F_BKPF_BUK, F_BKPF_KOA

Other High-Risk SD conflicts include: OTC-04 (Sales Order + Clear Customer), OTC-05 (Invoice + Clear Customer), OTC-06–OTC-07 (Pricing + Sales/Invoice), OTC-08 (Cash + Customer Master + Contracts), OTC-09 (Sales Order + Release Block), OTC-10 (Credit Limit + Invoice), OTC-11 (Customer Master + Clear Balance), OTC-12 (Customer Master + Billing), OTC-13–OTC-14 (Sales Order + Credit Memo), OTC-15 (Invoice + Clear Customer), OTC-16–OTC-17 (Customer Master + Credit), and OTC-18–OTC-19 (Payment/Pricing/Billing combinations).

HR / Payroll - 31 SoD risks

The HR module covers 31 risks (12 High) across employee master data, payroll processing, time management, and personnel development.

HCM-01 - Employee Bank Account & Payroll Processing (High)

An employee could change another employee's bank account details and process payroll, diverting payments.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
EMPL - Employee Master DataPA30, PA42, PA70, PA10F2288P_ORGIN, P_TCODE
PYRL - Process PayrollPA03, PA04, PC00_M*_CALCF0691P_ORGIN, P_PYEVRUN, F_REGU_BUK

HCM-02 - Time Entry & Time Approval (High)

A user could enter and approve timesheets, enabling fraudulent payroll payments.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
TIME - Time DataCAT2, CAT4, CAT6, CAPP, CAPSF0409B, F1312, F1506P_ORGIN, P_ORGXX
TAPP - Approve TimeCATS_APPR, CATS_APPR_LITE, CAT4F1314, F2585P_ORGIN

HCM-03 - Employee Bank Account & Position Maintenance (High)

A user could alter an employee's position to a higher pay rate and change their bank account to intercept payments.

FunctionKey TransactionsKey Auth Objects
EMPL - Employee Master DataPA30, PA42, PA70P_ORGIN, P_TCODE
PDST - PD StructurePA48, PFOM, PFTC, OOOE, OOOUPLOG, P_ORGIN

Other High-Risk HR conflicts include: HCM-04 (Timesheet + Position), HCM-05 (Employee Master + Time Data), HCM-06 (Payroll Status + Bank Account), HCM-07 (Payroll Status + Payments), HCM-08 (Write Lock + Unlock Records), HCM-09 (Position + Payroll), HCM-10 (Payment Amount + Bank Account), HCM-11 (Payment Amount + Payroll Config), and HCM-12 (Bank Account + Payroll Config).

Manufacturing & materials (MM) - 17 SoD risks

The MM module covers 17 risks (6 High) focused on goods movements, inventory management, and warehouse management.

INV-01 - Goods Receipt/Issue & Inventory Count (High)

A user could receive or issue incorrect quantities and adjust the stock count to hide the discrepancy.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
GMOV - Goods MovementsMIGO, MB01, MB1A, MB1B, MB1CM_MSEG_BWA, M_MSEG_WWA, M_MATE_WRK
ICNT - IM CountsMI01, MI02, MI04, MI05F1512, F3197, F3340M_ISEG_WDB, M_ISEG_WIB
ICLR - IM Clear DifferencesMI07, MI08, MI10, MI35, MI37M_ISEG_WZB, M_ISEG_WZL

INV-02 - Goods Movements & WM Inventory Count/Adjust (High)

A user who moves goods and controls warehouse inventory counts could misappropriate goods and adjust counts to cover the discrepancy.

FunctionKey TransactionsKey Auth Objects
GMOV - Goods MovementsMIGO, MB01, MB1A, MB1BM_MSEG_BWA, M_MATE_WRK
WCNT - WM CountsLI01, LI02, LI06, LI11, LI12/SCWM/PIPR, C_LIME_SI
WCLR - WM Clear DifferencesLI20, LI21, LQ02, LT02/SCWM/PIPR, M_MSEG_BWA

Other High-Risk MM conflicts include: INV-03 (Quality Results + WM Count/Clear), INV-04 (Journal Entry + WM Count/Clear), INV-05 (Goods Movements + IM Count/Clear), and INV-06 (Journal Entry + IM Count/Clear).

SAP Basis / Security - 27 SoD risks

The Basis module covers 27 risks focused on development, configuration, transport management, security administration, and client administration.

SYS-01 - Client Administration & Security Administration (High)

A user with client admin and security admin access could modify security parameters and replicate changes across the landscape.

FunctionKey TransactionsKey Auth Objects
CLAD - Client AdminSCC4, SCCL, SCC1, SCC9, FOD0, FOD1S_CLNT_IMP, S_TABU_CLI, S_ADMI_FCD
SCAD - Security AdminSU01, SU10, SU24, PFCG, SU25S_USER_GRP, S_USER_AGR, S_USER_AUT

SYS-02 - Create Transport & Perform Transport (High)

A user who can both create and execute transports bypasses the dual-control principle of change management.

FunctionKey TransactionsKey Auth Objects
CTRS - Create TransportSE01, SE09, SE10, STMSS_CTS_ADMI, S_TRANSPRT
PTRS - Perform TransportSTMS, SCC1S_CTS_ADMI, S_TRANSPRT

SYS-03 - User Maintenance & Role/Profile Maintenance (High)

A user who can both maintain users and maintain roles could assign inappropriate authorizations to themselves.

FunctionKey TransactionsKey Auth Objects
USRM - User MasterSU01, SU10S_USER_GRP, S_USER_AUT
ROLM - Roles/ProfilesPFCG, SU24, SU25S_USER_AGR

SYS-04 - Development & System Administration (Medium)

A developer with system admin access could deploy changes without proper oversight.

FunctionKey TransactionsKey Auth Objects
DEVL - DevelopmentSE38, SE80, SE24, SE37, CMOD, DMWB, SMODS_DEVELOP, S_PROGRAM, S_TABU_DIS
SYAD - System AdminSM21, SM37, SM50, SM51, SM66, STMS, SE09, SE10S_ADMI_FCD, S_BDC_MONI, S_BTCH_ADM

SYS-05 - Development & Configuration (Medium)

A developer who can also change configuration could introduce changes that bypass standard change management.

FunctionKey TransactionsKey Fiori AppsKey Auth Objects
DEVL - DevelopmentSE38, SE80, SE24, SE37, CMODS_DEVELOP, S_PROGRAM
CNFG - ConfigurationSPRO, SM30, SM31, SM34F1273, F2190, F2273S_TABU_DIS, S_TABU_NAM, S_RZL_ADM

Other Basis risks include: SYS-06 (Development + Client Admin), SYS-07 (Development + Transport), SYS-08–SYS-11 (Utilities + System/Config/Client/Transport), SYS-12–SYS-13 (Table Maintenance + System/Client), SYS-14 (Security + Transport), SYS-15 (Configuration + Transport), and SYS-16 (Client Admin + Configuration).

Additional modules

A full SoD ruleset also covers:

  • Quality Management (QM) — 10 risks covering inspection plans, results recording, usage decisions, and quality notifications
  • Plant Maintenance (PM) — 7 risks covering work orders, bill of materials, equipment maintenance, and cost settlement
  • Consolidation (EC/G) — 16 risks covering consolidation data models, eliminations, and journal processing
  • Joint Venture (JV) — 9 risks covering JVA master data, billing, invoicing, and payments
  • BPC (BP) — 25 risks covering planning, consolidation journals, security, and data management
  • Environment Health & Safety (EH) — 1 risk covering dangerous goods management

Key SAP authorization objects for SoD

Transaction codes alone don't tell the full story. Two users might both have access to ME21N (Create Purchase Order), but their actual authority differs based on authorization objects. Effective SoD analysis must check at the authorization object level to avoid false positives.

A well-designed ruleset references hundreds of authorization objects. Here are the most important ones by area:

Procurement objects

ObjectNameFieldsSoD Role
M_BEST_EKGPO - Purchasing GroupACTVT, EKGRPScopes PO create/change by purchasing group. A conflict is only real if EKGRP values overlap across both functions.
M_BEST_EKOPO - Purchasing OrgACTVT, EKORGControls purchasing at the org level. Critical for cross-company SoD analysis.
M_BEST_WRKPO - PlantACTVT, WERKSPlant-level purchasing scope. A user creating POs in Plant 1000 and approving in Plant 2000 may not have a real conflict.
M_BANF_EKGRequisition - Purch. GroupACTVT, EKGRPScopes purchase requisition processing. Key for requisition-to-PO conflicts.
M_BANF_BSARequisition - Doc TypeACTVT, BSARTControls which requisition document types a user can process.
M_RECH_BUKInvoice Verification - CoCdACTVT, BUKRSControls invoice processing by company code. Key for the GR + invoice and invoice + payment conflicts.

Finance objects

ObjectNameFieldsSoD Role
F_BKPF_BUKAccounting Doc - CoCdACTVT, BUKRSThe most referenced FI object. Controls financial document creation/change by company code.
F_BKPF_KOAAccounting Doc - Acct TypeACTVT, KOARTDetermines which account types (K=Vendor, D=Customer, S=GL, A=Asset) a user can post to.
F_LFA1_BUKVendor Master - CoCdACTVT, BUKRSControls vendor master maintenance. Central to the vendor + payment conflict.
F_REGU_BUKAuto Payment - CoCdFBTCH, BUKRSControls access to the automatic payment program (F110).
F_REGU_KOAAuto Payment - Acct TypeFBTCH, KOARTFurther restricts payment access by account type.
F_BNKA_BUKBank Master - CoCdACTVT, BUKRSControls bank master record maintenance. Key for the bank + payment conflict.
F_PAYR_BUKPayment Run - CoCdACTVT, BUKRSControls payment document access.

HR / Payroll objects

ObjectNameFieldsSoD Role
P_ORGINHR Master DataINFTY, SUBTY, AUTHC, PERSA, PERSG, VDSK1Controls access to employee master data by infotype, personnel area, and authorization level. The most critical HR object.
P_ORGXXHR Master Data (Extended)INFTY, SUBTY, AUTHC + org fieldsExtended version with additional organizational checks.
P_PYEVRUNPayroll RunPYEVTYPE, PYEVRUNControls which payroll runs a user can execute. Key for payroll processing conflicts.
PLOGPersonnel PlanningINFOTYP, SUBTYP, PLVARControls PD (position/organizational) master data.

Basis / Security objects

ObjectNameFieldsSoD Role
S_USER_GRPUser Maintenance - GroupACTVT, CLASSControls user administration by user group.
S_USER_AGRRole AssignmentACTVT, ACT_GROUPControls who can assign roles to users.
S_DEVELOPDevelopmentDEVCLASS, OBJTYPE, ACTVTControls ABAP development access. ACTVT=02 (change) with debug capability is a critical access risk.
S_TABU_DISTable Maintenance - Auth GroupACTVT, DICBERCLSControls access to table maintenance (SM30/SM31). Wide-open S_TABU_DIS is a common audit finding.
S_ADMI_FCDSystem Admin FunctionsS_ADMI_FCDControls access to administrative functions like client copy and system-level operations.
S_TRANSPRTTransportTTYPE, ACTVTControls transport creation and execution. Key for the create + perform transport conflict.

Why authorization-level analysis matters

Transaction-level SoD analysis flags every user with access to both XK01 and F110 as having a conflict. Authorization-level analysis checks whether the user's F_LFA1_BUK company code values overlap with their F_REGU_BUK values. If a user can only maintain vendors in company code 1000 but only run payments in company code 2000, there is no real conflict.

A production ruleset references hundreds of authorization objects across all SoD risks, each constraining the scope of what a user can actually do. Without checking these values, SoD analysis generates excessive false positives.

MTC Skopos performs this deep authorization analysis automatically, producing precise results that focus your remediation efforts where they matter.

How to detect SoD conflicts in SAP

Method 1: Manual analysis via SUIM

SAP provides built-in reports through transaction SUIM (User Information System):

  1. Extract user-role assignments: SUIM → Roles → By User Assignment
  2. Extract role-transaction mappings: SUIM → Roles → By Transaction
  3. Export to Excel and cross-reference against your SoD ruleset

Limitations:

  • Time-consuming (days for large environments)
  • Doesn't check authorization object values
  • Point-in-time snapshot, outdated immediately
  • Error-prone manual cross-referencing
  • No automated remediation guidance

Method 2: SAP GRC Access Control (ARA)

SAP's Access Risk Analysis module provides automated detection:

  1. Configure your SoD ruleset in the GRC system
  2. Schedule or run ad-hoc risk analysis
  3. Review results in the GRC dashboard

Limitations:

  • Requires dedicated infrastructure (servers, database)
  • Implementation takes weeks to months
  • Per-user pricing that scales with landscape size
  • Analysis can take hours for large user populations
  • Basic remediation suggestions

MTC Skopos provides fast, deep SoD conflict detection:

  1. Import data: Connect via SAP RFC or import CSV exports
  2. Load ruleset: Import your SoD ruleset from Excel — MTC Skopos supports any custom ruleset, and our consulting team can build one tailored to your landscape
  3. Run analysis: Full system analysis completes in minutes
  4. Review results: Conflicts shown with specific users, roles, transactions, and authorization values
  5. Get remediation: Advanced algorithm provides step-by-step resolution plans

Advantages:

  • Authorization-level analysis (fewer false positives)
  • Minutes, not hours
  • No infrastructure requirements
  • Did-do analysis distinguishes theoretical vs. actual risk
  • Advanced Remediation provides specific fix steps
  • Data never leaves your infrastructure

SoD conflicts in S/4HANA

S/4HANA introduces new authorization layers that expand the conflict surface. A modern ruleset must cover both traditional transaction codes and their Fiori equivalents, including hundreds of Fiori apps alongside thousands of classic transactions:

Fiori app coverage in a modern ruleset

The ruleset maps Fiori apps to the same functions as their classic transaction equivalents. For example:

FunctionClassic TransactionsFiori Apps
VMNT - Vendor MasterXK01, FK01, BPF0593, F0871, F1546, F3336
PORD - Purchase OrdersME21N, ME22N, ME51NF0547B, F0752, F0842, F1702, F1982
JRNL - Journal EntryFB01, FB50, F-02F0717, F0718, F1119, F1240
SORD - Sales OrdersVA01, VL01N, VF01F1119, F1240, F1478, F1510, F1814
TIME - Time DataCAT2, CAT4, CAPPF0409B, F1312, F1506
CNFG - ConfigurationSPRO, SM30F1273, F2190, F2273, F2704

A ruleset that only checks classic transaction codes would miss users who access these functions exclusively through Fiori apps.

OData services and authorization

Fiori apps use OData services like MM_PUR_PO_MAINT_V2_SRV which require:

  • S_SERVICE (OData service authorization)
  • S_START (App start authorization)
  • Traditional M_BEST_* objects for business logic

New authorization patterns

  • Business roles (BR_*) aggregate multiple business catalogs
  • Business catalogs (SAP_*) group Fiori apps and services
  • Spaces and pages control Fiori Launchpad layout but not authorization

A user might have no access to ME21N but full access to the "Manage Purchase Orders" Fiori app. A ruleset that only checks transaction codes would miss this.

Deep dive: Building an Effective SoD Ruleset for S/4HANA


Frequently asked questions

How do you check SoD conflicts in SAP?

You can check SoD conflicts in SAP using dedicated SoD analysis tools like MTC Skopos or SAP GRC Access Control, or by extracting user roles via SUIM and cross-referencing against an SoD ruleset. Automated tools compare user access at the authorization object level and flag all conflicts within minutes.

What SAP authorization objects are important for SoD?

Key SAP authorization objects for SoD analysis include M_BEST_EKG (purchasing group), M_BEST_EKO (purchasing organization), M_BEST_WRK (plant), F_BKPF_BUK (company code for financial postings), F_LFA1_BUK (vendor master), and F_REGU_BUK (automatic payments). These objects define the actual scope of user access beyond transaction codes.

What is the difference between transaction-level and authorization-level SoD analysis?

Transaction-level analysis only checks which transaction codes a user can execute. Authorization-level analysis also checks the authorization object values (company code, purchasing group, plant, etc.) to determine whether the user's access actually overlaps across conflicting functions. Authorization-level analysis produces fewer false positives.



Ready to detect your SAP SoD conflicts? Explore MTC Skopos features or contact us for a demonstration.

« All posts