Join our Newsletter — 33% off our NHI Course
Home› Guides› Segregation of Duties Matrix Template: A Ready Ruleset…
Template Identity Governance (IGA)

Segregation of Duties Matrix Template: A Ready Ruleset of Toxic Access Combinations

← All guides
By NHI Mgmt Group, edited by Lalit Choda Updated 8 November 2026 11 min read
On this page

Auditors rarely find segregation of duties failures by reading policy; they find them by joining your access data to a list of conflicting functions, and most organisations do not have that list written down. This template is that list: a segregation of duties (SoD) ruleset for finance processes, ERP administration and IT administration, with a risk rating and a mitigating control for each conflict. NIST SP 800-53 Rev. 5 control AC-5 asks organisations to identify and document duties of individuals that require separation and to define system access authorisations to support it; this matrix is the documentation that control expects. It is written for identity governance, internal audit, finance systems and ERP security teams. The concepts, preventive and detective approaches are explained in the Segregation of Duties Guide; this page is the working ruleset to adapt.

How to use this template

  • Replace placeholders: text in square brackets, such as [Organisation], [ERP system] and [Head of Financial Control], is for your own systems and role titles.
  • Define functions before mapping roles: section 3 lists business functions (create supplier, approve payment). Map each function to the technical entitlements in each system (roles, transactions, permission sets, groups) in section 4 before running any analysis. A conflict is defined between functions, not between role names, because role names change and roles bundle many functions.
  • Read the codes as: H = high risk (direct path to fraud or misstatement, prevent wherever possible), M = medium (detect and mitigate), L = low (monitor). Ratings in this template are a starting point; your process owners must confirm them.
  • Include non-human identities: service accounts, integration users, RPA bots and AI agents that run finance or admin tasks are subject to the same rules. A bot that can both create and approve a payment is a conflict, whoever wrote it.
  • Approve and version: the ruleset is owned by [Head of Financial Control] for finance rules and [CISO] for IT rules, approved annually and after any major system change.

1. Purpose and scope

1.1 This ruleset defines the combinations of business functions that no single identity, human or non-human, may hold at [Organisation] without an approved mitigating control.

1.2 It applies to [ERP system], [payroll system], [banking and treasury platform], [identity provider], [cloud platforms] and any system that records, approves or moves financial value or controls access to those systems.

1.3 It supports [Organisation]'s internal control over financial reporting and access control obligations, including NIST SP 800-53 AC-5 Separation of Duties and NIST CSF 2.0 PR.AA-05 (access permissions defined in policy, managed, enforced and reviewed).

2. Roles and ownership

RoleResponsibility
[Head of Financial Control]Owns finance rules, approves risk ratings and accepts residual risk for finance conflicts
[CISO]Owns IT administration rules and accepts residual risk for IT conflicts
Process owners ([AP Manager], [Payroll Manager], [Treasurer])Confirm functions and entitlement mapping for their process; perform mitigating control reviews
[Identity Governance team]Maintains the entitlement mapping, runs conflict analysis, enforces preventive checks in the access request process
[Internal Audit]Tests the ruleset, the analysis and the mitigating controls independently
System ownersProvide entitlement extracts and implement technical restrictions

3. Function definitions

3.1 Use these function codes in the matrix. Add rows for processes specific to [Organisation].

CodeFunctionProcess
P1Create or change supplier master data (including bank details)Procure to pay
P2Create or approve purchase ordersProcure to pay
P3Record goods receiptProcure to pay
P4Enter or post supplier invoicesProcure to pay
P5Release or approve payments, run the payment proposalProcure to pay
O1Create or change customer master data and credit limitsOrder to cash
O2Enter sales orders and issue credit notesOrder to cash
O3Record cash receipts and apply paymentsOrder to cash
G1Create or post manual journal entriesRecord to report
G2Approve manual journal entriesRecord to report
G3Maintain chart of accounts and open or close periodsRecord to report
H1Create or change employee master data and bank detailsPayroll
H2Process or approve payroll runsPayroll
T1Initiate bank transfersTreasury
T2Approve bank transfersTreasury
T3Perform bank reconciliationTreasury
A1Create users and assign roles in [ERP system]ERP administration
A2Change ERP configuration or develop and transport code to productionERP administration
A3Execute business transactions in productionERP administration
I1Administer the identity provider or directory (create accounts, assign privileged roles)IT administration
I2Approve access requestsIT administration
I3Administer audit logging or the SIEM (change retention, delete or disable logs)IT administration
I4Develop code or infrastructure changesIT administration
I5Approve and deploy changes to productionIT administration
I6Administer secrets stores and key managementIT administration

4. Entitlement mapping

4.1 For each function, record the technical entitlements that grant it in each system. Keep this table in the identity governance tool as the machine-readable ruleset.

FunctionSystemEntitlement (role, transaction, permission set, group)Owner
P1[ERP system][supplier master maintenance role or transactions][AP Manager]
P5[banking platform][payment approver profile][Treasurer]
I3[SIEM][log administration role][SOC Manager]
[...][...][...][...]

4.2 Map at the lowest practical level (transaction or permission plus the data scope, such as company code), because a role that looks harmless can include one sensitive permission.

5. Conflict matrix

5.1 No identity may hold both functions in a row unless section 6 records an approved mitigating control.

IDFunction AFunction BRiskRating
SOD-01P1 Supplier masterP5 Release paymentsCreate a fictitious supplier or change bank details, then pay itH
SOD-02P1 Supplier masterP4 Post invoicesCreate a supplier and invoice itH
SOD-03P2 Purchase ordersP3 Goods receiptOrder and confirm receipt of goods never deliveredM
SOD-04P2 Purchase ordersP5 Release paymentsOrder from a favoured supplier and pay without challengeH
SOD-05P4 Post invoicesP5 Release paymentsPost and pay a false or duplicate invoiceH
SOD-06O1 Customer master and creditO2 Sales orders and credit notesRaise credit limits and ship or credit without approvalM
SOD-07O2 Credit notesO3 Cash receiptsDivert a customer payment and hide it with a credit noteH
SOD-08G1 Post journalsG2 Approve journalsPost and approve own manual journal to misstate resultsH
SOD-09G1 Post journalsG3 Periods and chart of accountsReopen a closed period and post unreviewed entriesM
SOD-10H1 Employee masterH2 Payroll runsCreate a ghost employee or change bank details and payH
SOD-11T1 Initiate transfersT2 Approve transfersMove funds without a second personH
SOD-12T1 or T2 TransfersT3 Bank reconciliationConceal an unauthorised transfer in the reconciliationH
SOD-13A1 ERP user administrationA3 Business transactionsGrant self any finance function and use itH
SOD-14A2 ERP configuration or transportsA3 Business transactionsChange tolerances or code, then transact under the changed rulesH
SOD-15I1 Identity administrationI2 Approve accessRequest, approve and provision own privileged accessH
SOD-16I1 Identity administration or any privileged adminI3 Audit log administrationAct and erase the evidence; NIST AC-5 guidance names this split explicitlyH
SOD-17I4 Develop changesI5 Approve and deploy to productionDeploy unreviewed code or infrastructure changesH
SOD-18I6 Secrets and keys administrationA3 or T1 Business or payment transactionsRetrieve integration credentials and act as a service accountM
SOD-19Any finance functionOwnership of the integration or bot that performs the same functionChange the automation to perform the other half of a conflictM

5.2 Conflicts are evaluated across systems. A user with P1 in [ERP system] and P5 in [banking platform] breaches SOD-01 even though no single system shows both.

6. Mitigating controls

6.1 Where a conflict cannot be removed, for example in a small team, record one or more of these controls in the exceptions register with the reviewer, frequency and evidence.

ControlApplies toFrequencyEvidence
Independent review of supplier master changes, especially bank details, with call-back to a known contactSOD-01, SOD-02Each change or weeklyChange report signed by [Finance Controller]
Review of payments to new or recently changed suppliers before releaseSOD-01, SOD-04, SOD-05Each payment runApproved payment run report
Duplicate invoice and three-way match exception reportSOD-03, SOD-05WeeklyException report with resolution notes
Manual journal review above [threshold] by an independent approverSOD-08, SOD-09Monthly closeJournal listing with approver sign-off
Payroll variance and new joiner report reviewed by HRSOD-10Each payroll runSigned variance report
Dual authorisation enforced in the banking platformSOD-11Continuous (system enforced)Platform configuration export
Emergency or firefighter access with time limit and post-use log reviewSOD-13, SOD-14, SOD-15Each useSession log and reviewer sign-off within [2] working days
Audit logs forwarded to a store the administrator cannot alterSOD-16ContinuousLog pipeline configuration; NIST AU-9
Change approval by a second person enforced in the pipelineSOD-17Each changePipeline approval records; NIST CM-5

6.2 Every exception records: identity, conflict ID, business reason, mitigating control, reviewer, start date and an expiry no later than [12] months.

7. Enforcement and review

7.1 Preventive: the access request process checks requests against this ruleset and blocks or routes high-risk conflicts to [Head of Financial Control] or [CISO]. Identity governance tools support this; for example, Microsoft Entra entitlement management lets an access package list incompatible access packages and incompatible groups, and blocks requests from users who already hold them.

7.2 Detective: run a full conflict analysis across all in-scope systems at least [quarterly] and after any role redesign, and include the results in user access reviews (NIST AC-6(7) Review of User Privileges).

7.3 Violations without an approved exception are remediated within [30] days for H and [60] days for M ratings.

Implementation guidance

  1. Start with high-risk rules in one process. Procure to pay usually has the most direct fraud paths (SOD-01, SOD-04, SOD-05). Agree the functions and entitlement mapping with the process owner before expanding.
  2. Extract entitlements, not role names. Pull user-to-permission data from each system, including service accounts and integration users, and resolve nested roles and groups.
  3. Run the first analysis in report-only mode. Expect a large number of hits; most come from a few over-broad roles. Fix the roles before chasing individual users.
  4. Triage with process owners. For each remaining conflict decide: remove access, redesign the role, or accept with a mitigating control from section 6.
  5. Turn on preventive checks in the access request process for H rules once the backlog is manageable, with an escalation path rather than a hard block for urgent business cases.
  6. Test before audit. Ask internal audit to sample conflicts and mitigating control evidence before the external auditor does.
  7. Roll back safely: if a preventive rule blocks critical work, switch that rule to detect and approve for a defined period rather than deleting it, and record the decision.

Common failure patterns

  • Single-system analysis: conflicts that span the ERP and the banking platform are never seen.
  • Bots and service accounts excluded: an integration user holds supplier maintenance and payment release because "it is only a system account". See the NHI Ownership Guide.
  • Firefighter access without review: emergency access is logged but nobody reads the logs.
  • Permanent exceptions: mitigations approved once and never re-tested or expired.
  • IT administrators out of scope: finance rules are enforced while directory and log administrators hold every IT conflict in the matrix.

Measuring whether it works

  • Open H conflicts without an approved exception (target zero).
  • Exceptions past expiry or without current mitigating control evidence.
  • Blocked requests at the preventive check, as a sign the rules are live.
  • Time to remediate new conflicts after a role change.
  • Non-human identity coverage: share of service accounts and bots in scope that are included in the analysis.

Small vs large organisations: a small finance team cannot separate every function, so it relies on section 6 controls, especially independent review of supplier changes and payment runs, and dual authorisation in the bank. A large organisation should enforce H rules preventively in the identity governance tool and treat exceptions as rare. See the SOX IT General Controls (ITGC) Guide for how auditors test these controls, and the RBAC Role Matrix Template for designing roles that avoid conflicts in the first place.

Standards and references

This template is provided for guidance and must be adapted to your organisation. Related NHI Mgmt Group resources: Segregation of Duties Guide · Identity Governance Maturity Model · AI Agents and SOX Controls · Security RACI Matrix Template

Free weekly newsletter

Subscribe to the NHI & AI Identity Journal

The latest on NHI and Agentic AI security – articles, research, breaches, news and events every week.

Bonus 33% off our NHI Course when you subscribe.

NHIMG Editorial Note
Researched and written by the NHI Mgmt Group editorial team using AI tools, under the editorial direction of Lalit Choda. Facts are drawn from the sources listed on this page and checked by our automated quality process. Last updated 8 November 2026. Spotted an error? Use our contact page.
NHI Mgmt Group, the independent authority on Non-Human Identity, IAM and Agentic AI security. nhimg.org