HomeAboutBlog ContactSAP
🔒 SAP Security · Compliance · Audit · 2026–27

SAP Security Audit Checklist:
Complete Guide for Compliance, Risk And
Access Reviews (2026–27)

Everything a SAP Security consultant, internal auditor, or Basis administrator needs to run a thorough security audit - from user access reviews and SoD conflicts to GRC configuration, audit logging, and regulatory compliance.

2026–27 Guide Pramod Behera 35 min read Security · GRC · SoD · Compliance · Basis
Applies to SAP ECC · S/4HANA · BTP · SAP GRC 12.0

🔒 What Is an SAP Security Audit and Why Every Organisation Needs One

Today we are discuss with Topic SAP Security Checklist Guide.An SAP Security Audit is a systematic review of your SAP view to identify security exposure, access control weaknesses, segregation-of-duties (SoD) conflicts, and compliance gaps. In 2026–27, SAP environments are under scrutiny from regulators (SOX, GDPR, ISO 27001), external auditors, and internal risk teams more than ever before. A missed SAP security finding can result in financial restatements, data breach liability, failed audits, or regulatory fines. This guide gives you the complete, actionable checklist across all audit dimensions - structured so you can use it directly in your next audit engagement.Also this tutorial or document breaks down the process step by step, using simple language and real-world examples to help you master the skill.

12
Audit Domains
Covered
100+
Checklist Items
Across All Areas
6
Compliance
Frameworks
15
Interview Q&As
for 2026
🛡️

Access Control Review

User master data, role assignments, superuser access, locked users, and password policy validation across all company codes and systems.

⚖️

Segregation of Duties

Identify conflicting authorizations - users who can both create and approve purchase orders, or post and clear accounting documents simultaneously.

📋

Compliance Mapping

Map each audit finding to the relevant regulation - SOX IT General Controls, GDPR data access, ISO 27001 controls, or DORA digital resilience requirements.

💡

How to Use This Checklist: Work through each section in order. Use the interactive checkboxes to track completion. Each item includes the SAP T-code or tool to use, the risk level, and what evidence to collect for audit documentation. For GRC-enabled systems, many checks can be automated - look for the GRC tags.

SAP GRC Access Control
User Access Review
SoD Analysis
Audit Log (SM20)
Password Policy
SOX · GDPR · ISO 27001

👤 User Administration And Access Control Audit

User administration is the most commonly cited area of SAP security findings in external audits. also The goal is to ensure that only active, authorised users have access, that access levels match job responsibilities, and that privileged access is tightly controlled and monitored.

👤

User Master Data Checks

CRITICAL
  • Active users with no recent login: Identify all users who have not logged in for more than 90 days. These accounts should be locked or deleted. Use SU10 or SUIM → Users by Logon Date. CRITICAL
  • Terminated employees still active: Cross-reference SAP user master (table USR02) against HR offboarding records. Any ex-employee with an active account is a critical finding. CRITICAL
  • Superuser / SAP_ALL assignments: List all users with the SAP_ALL profile. This profile grants unrestricted access and should only exist for emergency break-glass accounts. Use SUIM → Users with Given Profile → SAP_ALL. CRITICAL
  • SAP* and DDIC default accounts: Verify SAP* and DDIC are locked in all production and development clients. Check SU01 and confirm lock indicator is set. CRITICAL
  • Shared / generic user IDs: Identify accounts shared by multiple people (often named ADMIN, TEST, INTERFACE, BATCH). Each user must have a unique, personal account for audit traceability. HIGH
  • Service / interface accounts: Review all dialog-type users used for batch jobs and interfaces. These should be type Service or System user, not Dialog, to prevent interactive login. HIGH
  • Users with multiple failed logins (not locked): Check USR02 field UFLAG for accounts that have exceeded the maximum login attempts but remain unlocked due to manual intervention. HIGH
  • Valid-from / valid-to dates on user accounts: Temporary users (contractors, auditors, project staff) must have an GLTGB (valid-to date) set. Verify in SU01 or SU10. MEDIUM
  • User type correctness: Confirm all interactive users are type A (Dialog), batch users are type B (System) or C (Communication), and no Dialog users are used for automated processes. MEDIUM
  • User validity period audit trail: Confirm that user creation and modification records exist in the change log. Check SU01 → Change Documents or table DBTABPRT for USR* table changes. MEDIUM
🔑

Password Policy And Authentication Controls

HIGH RISK
  • Password complexity rules: Verify profile parameter login/password_change_for_SSO and login/min_password_lng (minimum 12 for SOX/GDPR). Check in RZ11. CRITICAL
  • Maximum login attempts (lockout threshold): login/fails_to_user_lock must be ≤ 5 for most compliance frameworks. Verify in RZ11. HIGH
  • Password history enforcement: login/password_history_size must be ≥ 5 to prevent immediate password reuse. HIGH
  • Password expiry period: login/password_expiration_time should be ≤ 90 days for production systems handling financial data. HIGH
  • Initial password change enforcement: login/password_change_for_SSO and the "change password at next login" flag must be active for all newly created users. HIGH
  • SSO and MFA configuration: For S/4HANA and Fiori systems, verify multi-factor authentication is configured for remote access. Review SICF service settings and Identity Provider (IdP) configuration. HIGH
  • Session timeout: rdisp/gui_auto_logout should be ≤ 900 seconds (15 minutes) in financial production systems. Verify in RZ11. MEDIUM
Key SAP Profile Parameters for Password & Session Security - RZ11 Reference
Profile ParameterRecommended ValueRisk if IncorrectCompliance Standard
login/min_password_lng12 or more charactersWeak passwords allow brute-force attacksSOX, GDPR, ISO 27001
login/fails_to_user_lock5 or fewer attemptsUnlimited login attempts enable brute-forceSOX, PCI-DSS, ISO 27001
login/password_expiration_time90 days maximumStale passwords increase compromise windowSOX, NIST 800-53
login/password_history_size5 or moreUsers cycle back to weak known passwordsISO 27001, GDPR
rdisp/gui_auto_logout900 seconds (15 min)Unattended sessions allow unauthorized accessSOX, PCI-DSS
login/no_automatic_user_sapstar1 (enabled)SAP* fallback login bypasses all securityALL frameworks
auth/rfc_authority_check1 (enabled)RFC calls bypass authorization checksSOX, GDPR
snc/enable1 (enabled for RFC)Unencrypted RFC communication allows data interceptionGDPR, ISO 27001

Role And Authorization Object Audit (PFCG / SUIM)

Every Time Role design is the structural foundation of SAP security. Poorly designed roles - too broad, composite roles with too many single roles, or roles that are never cleaned up - are the root cause of most SoD conflicts and privilege escalation findings. The goal of this audit area is to verify that roles are minimal, purposeful, and correctly assigned.

Role Design and Assignment Review

HIGH RISK
  • Roles with full authorization (*) wildcards: In PFCG, identify any role where authorization object fields are maintained as * (all). Full wildcards on sensitive objects like S_TCODE, P_ORGIN (HR), or F_BKPF_BUK (FI) are a critical finding. CRITICAL
  • Roles assigned directly to users (not via composite): Best practice requires all role assignments to go through composite roles. Direct single-role assignments bypass the standard role management governance process. Check SUIM → Roles Assigned to Users. HIGH
  • Development / debug roles in production: Roles containing S_DEVELOP (ABAP workbench access), S_ADMI_FCD (system administration), or debug transaction SE38/SE37 authorizations must not exist in production. Use SUIM → Users with Given Authorization Object → S_DEVELOP. CRITICAL
  • Roles with expired validity dates still assigned: Query AGR_USERS table for role assignments where TO_DAT < current date. These are ghost assignments that may still be active depending on system configuration. HIGH
  • Orphan roles - defined but never assigned: Roles that exist in the system but are unassigned and unmaintained accumulate over time and create compliance complexity. Use SUIM → Roles Without User Assignment to identify and clean up. LOW
  • Role transport documentation: Every role change in production must have a documented transport request. Verify that no roles were changed directly in production via emergency access without a transport trace. Check PFCG → Change Documents. HIGH
  • Authorization object S_TCODE coverage: Verify that every role grants transaction access via S_TCODE authorization object. Roles that only restrict via organisational level but grant all T-codes are dangerously over-privileged. HIGH
  • Periodic role recertification: Confirm that a documented annual or semi-annual role recertification process exists. In GRC-enabled systems, this is the Access Request Management Access Review campaign. MEDIUM

Critical Authorization Objects to Audit

High-Risk SAP Authorization Objects - Audit Focus Areas
Auth ObjectWhat It ControlsRisk If Over-PrivilegedAudit T-Code
S_TCODEWhich transactions a user can runUsers access transactions outside their job functionSUIM, SE16N on AGR_1251
S_DEVELOPABAP development and debugging accessUsers can modify programs, read any table, change dataSUIM → Auth Object S_DEVELOP
S_ADMI_FCDSystem administration functionsUsers can stop/start services, change system parametersSUIM → Auth Object S_ADMI_FCD
F_BKPF_BUKFI - posting in company codesUsers can post financial documents in all company codesSUIM → Auth Object F_BKPF_BUK
P_ORGINHR - personnel master data accessUsers can view/change salary, bank details, personal dataSUIM → Auth Object P_ORGIN
M_MSEG_WMBMM - goods movement postingUsers can post any goods movement type including free issuesSUIM → Auth Object M_MSEG_WMB
S_RFCRFC function group accessExternal programs can call any function module remotelySE16N on USOBT_C, USOBX_C
S_DATASETOS file system access from ABAPPrograms can read/write any file on the application serverSUIM → Auth Object S_DATASET
ABAP - Find all users with SAP_ALL or SAP_NEW profile
"Identify superuser profiles assigned to any user
SELECT bname, profn, datbi
  FROM usr04
  INTO TABLE @lt_superusers
  WHERE profn IN ( 'SAP_ALL', 'SAP_NEW' )
    AND   datbi >= @sy-datum.

"Also check composite role assignments granting SAP_ALL
SELECT a~uname, a~agr_name, p~profile
  FROM agr_users AS a
  INNER JOIN agr_prof AS p ON p~agr_name = a~agr_name
  INTO TABLE @lt_roles
  WHERE p~profile = 'SAP_ALL'
    AND   a~to_dat >= @sy-datum.

⚖️ Segregation of Duties (SoD) - Conflict Analysis

Segregation of Duties means that no single user should be able to complete an entire business process alone - particularly processes where fraud or error could occur without independent checking. SoD is the primary control required by SOX Section 404, and its absence is the most common critical finding in SAP financial system audits.

🚨

SOX Audit Impact: An unmitigated SoD conflict in a financial system is typically classified as a Significant Deficiency or Material Weakness under SOX Section 404. A material weakness can result in a qualified audit opinion, mandatory disclosure to the SEC, and significant remediation costs. Treat all unmitigated SoD findings as critical.

Critical SAP SoD Conflicts - The 20 Most Common Findings
SoD ConflictT-Code / Function AT-Code / Function BRiskFraud Scenario
PO Create + PO ApproveME21N (Create PO)ME29N (Release PO)CRITICALUser creates a fraudulent PO for a fictitious vendor and approves it themselves
Vendor Create + Invoice PostFK01 (Create Vendor)MIRO / FB60 (Post Invoice)CRITICALUser creates a fake vendor and posts fraudulent invoices to that vendor
FI Post + FI ClearFB50/F-02 (Post FI Doc)F-03/F-44 (Clear FI Doc)CRITICALUser posts a fraudulent transaction and then clears it to hide the audit trail
Payment Create + Payment ReleaseF110 (Payment Proposal)F110 (Payment Release)CRITICALUser creates and releases a payment to an unauthorized bank account
Customer Create + Cash Receipt PostFD01 (Create Customer)F-28 / FB05 (Post Payment)CRITICALUser creates a fake customer credit and posts payment receipts to cover AR fraud
Payroll Create + Payroll ReleasePY30 (Payroll Run Setup)PC00_M99_CALC (Payroll Release)CRITICALUser adds ghost employees or inflates salaries and approves the payroll run
User Create + Role AssignSU01 (Create User)SU01 / PFCG (Assign Role)CRITICALUser creates a superuser account and grants it full system access
GR Post + Invoice PostMIGO (Post Goods Receipt)MIRO (Post Vendor Invoice)HIGHUser confirms delivery of goods not actually received and approves payment
PR Create + PO ConvertME51N (Create PR)ME59N (Auto PO from PR)HIGHUser creates and converts their own requisition bypassing procurement controls
Fixed Asset Create + CapitaliseAS01 (Create Asset)ABUMN / F-90 (Post Acquisition)HIGHUser creates a fictitious asset and capitalises a fraudulent cost to it
G/L Account Create + PostFS01 / FSS0 (Create GL Account)FB50 / F-02 (Post FI Document)HIGHUser creates a suspense GL account and diverts funds to it undetected
Material Create + GR PostMM01 (Create Material)MIGO (Post Goods Receipt)MEDIUMUser creates a fictitious material and posts fabricated stock receipts
⚖️

SoD Audit Checklist

SOX CRITICAL
  • Run GRC Access Control SoD analysis report: In SAP GRC, run the Access Risk Analysis report for all production users. Export all critical and high SoD violations. If no GRC, use SUIM and the SoD conflict matrix from the risk library. CRITICAL
  • Identify unmitigated critical SoD conflicts: For every critical SoD hit, verify whether a compensating control exists and is documented (e.g., management approval, supervisory review of all transactions, exception reporting). Unmitigated = SOX finding. CRITICAL
  • Review Firefighter / Emergency Access logs: Check GRC Emergency Access Management (Firefighter) logs for all superuser sessions. Verify that every Firefighter ID usage has a documented business justification and post-use review. CRITICAL
  • Verify SoD mitigating controls are operating effectively: For each documented compensating control, collect evidence that the control was actually performed (e.g., signed approval sheets, exception report review sign-offs). Controls documented but not operating are a SOX finding. CRITICAL
  • Check for SoD conflicts in batch/service accounts: Service accounts and background job IDs also carry authorization profiles. A batch job that both posts and clears FI documents is an SoD conflict even if no human runs it interactively. HIGH
  • Validate SoD ruleset currency: Confirm the GRC SoD ruleset was reviewed and updated within the last 12 months. Outdated rulesets miss new T-codes and authorization objects introduced by SAP upgrades or custom development. MEDIUM

📋 Audit Log Configuration And Security Monitoring (SM20 / SM21)

SAP's Security Audit Log (SM20) and System Log (SM21) are your forensic tools - they record who did what and when in the SAP system. For audit compliance, you must not only have these logs enabled, but also verify they are collecting the right events, protected from tampering, and regularly reviewed.

📋

Security Audit Log (SM20 / RSAU_CONFIG) Checks

COMPLIANCE CRITICAL
  • Security Audit Log is active: Verify that rsau/enable = 1 in RZ11. If the Security Audit Log is disabled in production, this is a critical compliance finding for virtually every regulatory framework. CRITICAL
  • All event classes are being captured: In SM19 (or RSAU_CONFIG for newer systems), verify that the filter captures: all users / Dialog logins, all RFC logins, failed login attempts, authorization failures, user master changes, table changes, and report starts. CRITICAL
  • Audit log retention period: Verify rsau/max_diskspace/local is set large enough to retain at least 90 days of logs on disk, and that archived logs are retained for ≥ 1 year (SOX) or ≥ 3 years (GDPR data breach evidence). HIGH
  • Audit log integrity - no gaps or deletions: Review SM20 log files for unexpected gaps. Confirm that only authorised administrators can access SM18 (delete audit files). Unauthorised log deletion is a critical incident. CRITICAL
  • Audit log files forwarded to SIEM: Best practice and SOX/ISO 27001 requirement: SAP Security Audit logs should be forwarded in real time to a centralised SIEM (Security Information and Event Management) system. Verify the integration is configured and operational. HIGH
  • Regular log review evidence: Confirm that security logs are reviewed at least weekly by a designated security officer, and that review records exist. Logs that are captured but never reviewed provide no detective control value. HIGH
  • Alert on critical events: Verify that automated alerts are configured for: SAP* login attempts, multiple consecutive failed logins, Firefighter ID activation, SAP_ALL profile assignment, and direct table changes via SE16N in production. HIGH
  • Table change logging (DBTABLOG): For critical tables (USR02, AGR_USERS, T001, LFA1, KNA1), verify that table change logging is active. Check SE13 for the logging property on each table. HIGH
SAP Audit Log Event Classes - What Each Class Records
Event ClassEvents CapturedWhy It MattersCompliance
AU = Dialog LoginSuccessful and failed SAP GUI logins, logoff eventsTracks who logged into the system, when, and from whereSOX, GDPR, ISO 27001
AU = RFC LoginAll remote function call connections to the systemDetects unauthorised remote access and interface loginsSOX, ISO 27001
AU = Failed AuthEvery denied authorization check (S_TCODE etc.)Reveals users attempting to access restricted areasSOX, GDPR
AU = User MasterAll changes to USR* tables - user creation, modification, deletionDetects unauthorised user provisioning or privilege escalationSOX, GDPR, DORA
AU = ReportsPrograms started via SA38, SE38, or job schedulingDetects unauthorised report execution or data extractionGDPR, SOX
AU = Table AccessDirect table access via SE16, SE16N in productionDetects unauthorised data extraction or browsingGDPR, SOX
AU = TransportTransport imports and exports in all clientsDetects unauthorised code changes imported to productionSOX, ITGC

⚙️ System Configuration Security And Hardening Checklist

SAP system configuration contains hundreds of settings that directly affect security. Misconfigured profile parameters, open RFC connections, unrestricted client settings, and inadequate transport controls are all commonly exploited entry points in SAP security incidents.

⚙️

Client Settings And Transport Controls

HIGH RISK
  • Production client settings (SCC4): In SCC4, verify the production client has: Client role = Production, Changes and Transports = No changes allowed, CATT and eCATT = No changes allowed. A production client allowing direct changes is a critical SOX finding. CRITICAL
  • Transport Management System (TMS) config: Verify that all code changes flow through the documented DEV → QAS → PRD transport path. Check STMS for the transport route configuration. Any non-standard transports or manual corrections to production bypassing QAS must be documented. CRITICAL
  • Direct table changes in production: Check SM20 audit log for SE16N usage in production. Direct table modification (append, delete rows) in a production system without a transport is a critical data integrity and audit finding. CRITICAL
  • Background processing job ownership: Every scheduled background job must have a named, active owner user ID. Jobs owned by deleted users continue to run but cannot be managed. Check SM37 for jobs with invalid user owner. HIGH
  • Gateway security (SMGW / reginfo / secinfo): Verify that gw/reg_info and gw/sec_info files exist and restrict which programs and hosts can register/connect. An unprotected gateway allows external programs to register as trusted and execute any function. CRITICAL
  • ICM (Internet Communication Manager) settings: In SMICM, verify that only required HTTP/HTTPS services are active. Disable all unused ICF services in SICF. Every active ICF service is a potential external attack surface. HIGH
🔌

RFC Connection Security

HIGH RISK
  • RFC connections with stored passwords (SM59): In SM59, identify all RFC connections where a user ID and password are stored. These stored credentials must be for dedicated service accounts, not personal user IDs. CRITICAL
  • Trusted RFC connections (Transaction SM59 + SNOTE): Trusted system connections bypass login checks. Review all trusting relationships in SMT1 and SM59. Verify that trusted systems are actually legitimate and that trust is unidirectional (not mutual unless required). CRITICAL
  • Unused RFC connections: Identify RFC destinations in SM59 that have not been used recently. Obsolete connections increase the attack surface and should be deleted after verification. MEDIUM
  • SNC (Secure Network Communications) for external RFC: All external RFC connections must use SNC encryption. Verify snc/enable = 1 and that SNC is configured in SM59 for external connections. HIGH

🌐 Compliance Framework Mapping - SOX, GDPR, ISO 27001, DORA

SAP security findings must be mapped to the relevant regulatory frameworks to prioritise remediation and communicate risk to management. Different frameworks focus on different control areas - understanding the mapping lets you structure your audit report to address the most relevant regulatory exposure.

🏛️

SOX (Sarbanes-Oxley)

Section 404 requires effective IT General Controls. SAP SoD conflicts, access control weaknesses, and change management failures are direct SOX findings.

🇪🇺

GDPR

Article 32 requires appropriate security measures. SAP's access to personal data (HR, CRM, customer records) triggers GDPR obligations for access control, logging, and breach notification.

🔒

ISO/IEC 27001

Annex A controls cover access management (A.9), cryptography (A.10), operations security (A.12), and supplier relationships (A.15) - all applicable to SAP.

🏦

DORA (EU 2025+)

Digital Operational Resilience Act requires ICT risk management, incident reporting, and operational resilience testing for financial sector firms using SAP for core processes.

💳

PCI-DSS

If SAP processes payment card data, PCI-DSS Requirement 7 (restrict data access) and Requirement 8 (user authentication) apply directly to SAP user and role management.

📜

NIST CSF 2.0

NIST Cybersecurity Framework Govern, Identify, Protect, Detect, Respond, Recover functions all have direct SAP implementation points, particularly in the Protect and Detect categories.

SAP Security Control → Compliance Framework Mapping
SAP Control AreaSOX S.404GDPR Art.32ISO 27001PCI-DSSSAP Tool / T-Code
User Access Reviews✅ Required✅ RequiredA.9.2.6Req 7, 8SUIM, GRC UAR Campaign
SoD Conflict Remediation✅ CriticalPartialA.9.3Req 7GRC ARA, SUIM
Password Policy (RZ11)✅ Required✅ RequiredA.9.4Req 8RZ11, SU01
Privileged Access Management✅ Critical✅ RequiredA.9.2.3Req 7, 8GRC EAM, SU01
Security Audit Log✅ Required✅ RequiredA.12.4Req 10SM19/SM20, RSAU_CONFIG
Change Management (TMS)✅ CriticalPartialA.12.1.2Req 6STMS, SE09/SE10
Network / RFC EncryptionPartial✅ RequiredA.13.1Req 4SM59, SMGW, SNC
Data Retention & DeletionPartial✅ CriticalA.11.2.7Req 3ILM, RTPB, GDPR tools
Incident Response Logging✅ Required✅ RequiredA.16Req 10, 12SM20, SM21, SIEM

Common SAP Security Vulnerabilities And Remediation

Beyond access control, SAP systems contain technical vulnerabilities - missing patches, misconfigured services, and insecure default settings - that attackers actively exploit. These technical vulnerabilities are often invisible to traditional access-control-focused audits.

CRITICAL SAP Message Server Exposure

The SAP Message Server (port 3900+) allows registration of application servers. If exposed externally without access control lists, attackers can register rogue application servers. Fix: configure ms/acl_info and ms/server_port_0 access controls.

CRITICAL Unpatched SAP NetWeaver

SAP PSRT (Product Security Response Team) releases security notes monthly. Unpatched systems are exposed to known CVEs. Verify that SAP HANA and NetWeaver security notes are applied within 30 days of release. Use SNOTE and the SAP Patch Manager.

HIGH SAP Web Dispatcher Misconfiguration

A misconfigured SAP Web Dispatcher can expose internal SAP ICF services to the internet. Verify that only required URL patterns are routed and all admin URLs (/sap/admin/) are restricted to internal networks only.

HIGH ABAP Code Injection (Report SE38/SA38)

Users with SE38/SA38 execute authority can run arbitrary ABAP programs that bypass all authorization checks. Review who has access to these transactions in production and verify the custom code does not contain dynamic SQL injection vulnerabilities.

HIGH Unencrypted Data Transfer

SAP Dispatcher communication without SNC/TLS allows network eavesdropping of all user credentials and business data. Verify HTTPS is enforced for all Fiori and WebGUI access, and SNC is configured for SAP GUI connections.

MEDIUM Insecure Custom ABAP Programs

Custom ABAP reports that use authority-check bypass, concatenated SQL in EXEC SQL, or hardcoded credentials are common in older systems. Run the SAP Code Vulnerability Analyser (CVA) in SCI to identify custom code security issues.

🔧

SAP Security Baseline Tools: Use SAP Security Optimisation Service (SOS) and the SAP EarlyWatch Alert (accessed via SAP Solution Manager) for automated technical vulnerability scanning. The SOS report flags over 400 security configuration items against SAP best practice. Run it annually at minimum.

🏗️ SAP GRC Access Control Audit Checklist

SAP GRC Access Control is the primary tool for managing SoD, access requests, and emergency access in large enterprises. Auditing GRC itself is critical - a misconfigured GRC tool gives false assurance and may miss real risks. These checks verify that GRC is working as intended.

🏗️

SAP GRC 12.0 Configuration Audit

GRC AUDIT
  • GRC connector synchronisation is current: Verify that all managed systems (connectors) in GRC have synchronised user, role, and profile data within the last 24 hours. Stale data means GRC reports are showing outdated risk positions. Check GRAC_CONNECTOR_SYNC. HIGH
  • SoD ruleset last review date: The GRC ruleset (functions and risks) should be reviewed annually and after every major SAP upgrade. Confirm the review date and sign-off in the GRC rule maintenance (SPRO → GRC → Access Control → Maintain Rule Set). HIGH
  • All production systems in scope of GRC monitoring: Verify that every production SAP system (ECC, S/4HANA, SAP BW, SAP HR, CRM, etc.) is connected as a managed system in GRC. Systems outside GRC scope have no automated SoD monitoring. CRITICAL
  • Firefighter (Emergency Access Management) log review: All Firefighter ID sessions must generate a log that is reviewed and signed off by a controller within 24 hours of the session. Verify the log review workflow is configured and operating. CRITICAL
  • GRC user access review (UAR) campaigns: Confirm that at least one UAR campaign has been completed in the last 6 months (quarterly for SOX systems). Review the campaign completion rate - incomplete campaigns are a SOX finding. CRITICAL
  • Provisioning via GRC ARM only: Verify that all production user provisioning (create, modify, terminate) flows through GRC Access Request Management and is not done directly in SU01 outside the GRC workflow. Check the GRC ARM request log vs SM20 user creation events. HIGH
  • Mitigating controls documentation: Every approved SoD violation in GRC must have an associated mitigating control with a designated monitor and a review frequency. Verify controls are not just documented but regularly reviewed with evidence. HIGH
  • GRC system transport controls: GRC configuration changes (ruleset, connector config, workflow) must follow the same TMS transport process as the managed SAP systems. Direct GRC customising changes in production are a change management finding. MEDIUM
SAP GRC Key T-Codes And Transaction Reference for Auditors
GRC T-CodeModuleWhat It DoesAudit Use
GRAC_ARAAccess Risk AnalysisRun SoD risk analysis for users, roles, or profilesGenerate SoD violation report for audit evidence
GRAC_SPMEmergency AccessManage Firefighter IDs, log review, ID assignmentVerify all FF sessions have documented justification and post-review
GRAC_UARUser Access ReviewManage periodic access review campaignsConfirm UAR campaign completion rate and manager sign-off evidence
GRAC_ARMAccess Request MgmtAll user provisioning requests, approvals, and audit trailTrace any user account back to an approved access request
GRAC_SYNCRepository SyncSynchronise user and role data from all managed systemsVerify last sync date - stale data = unreliable GRC reports
GRAC_MITIGATIONMitigating ControlsManage and review compensating controls for SoD violationsVerify control monitors exist, are active, and have review evidence
/GRCPI/GRIA_DIAGGRC DiagnosticsSystem health check for GRC configuration issuesRun before audit to identify GRC configuration gaps

✅ SAP Security Audit Do's and Don'ts

Always Do These

  • Run a GRC Access Risk Analysis for all production systems before every external audit period - findings surfaced early can be remediated before the auditor arrives
  • Maintain an access request trail for every production user - every account must trace back to an approved business justification
  • Review Firefighter / emergency access logs within 24 hours of each use - delayed review negates the control value
  • Test compensating controls for SoD violations with evidence - document what the control is, who performs it, and how often
  • Keep the SAP Security Audit Log (SM20) enabled and forwarded to SIEM in all production systems
  • Apply SAP security patches (Security Notes) within 30 days of release for critical and high severity
  • Conduct at least one full user access review (UAR) every 6 months - quarterly for SOX-in-scope systems
  • Document every exception: every SoD override, every emergency access usage, every direct table change must have written justification and approval

Never Do These

  • Never leave SAP* and DDIC accounts active and unlocked in any production client - these are hardcoded bypass accounts known to every attacker
  • Never approve a permanent SoD exception without a documented, tested compensating control - "we accept the risk" without evidence is not a control
  • Never allow developers to have production system access - developer roles belong in DEV and QAS systems only
  • Never use shared user IDs in production - all SAP access must be personally accountable and traceable
  • Never disable the Security Audit Log in production - even temporarily during performance issues without explicit written authorisation and re-enabling plan
  • Never store production passwords in plaintext RFC connections (SM59) with dialog user IDs - use service/system accounts only
  • Never allow direct table changes (SE16N append/delete) in production without a transport, documented justification, and post-change review

❓ 15 SAP Security Audit Interview Q&As for 2026–27

These are the questions being asked in SAP Security Consultant, GRC Analyst, and Internal Audit interviews in 2026–27. Each answer is structured to show conceptual understanding, not just keyword recall.

Q1What is Segregation of Duties in SAP and why is it a SOX requirement?
✅ Strong Answer

Segregation of Duties (SoD) is a control principle that ensures no single user can complete a high-risk business process end-to-end without a second person's involvement. In SAP, the most common SoD conflict is a user who can both create and approve a purchase order - because that combination allows them to purchase anything without independent oversight. SOX Section 404 requires management to assess and report on the effectiveness of Internal Controls over Financial Reporting (ICFR). Since SAP is the financial system for most public companies, any unmitigated SoD conflict in SAP is a direct gap in ICFR. An unmitigated SoD conflict that is discovered by external auditors is typically classified as a Significant Deficiency or Material Weakness - either of which must be disclosed to investors in the annual report, potentially affecting the company's stock price and triggering SEC attention.

Q2What is the difference between SAP GRC Access Control and manual SoD analysis?
✅ Strong Answer

Manual SoD analysis involves extracting authorization data from SAP (using SUIM or SE16N on AGR_1251 and USR_AGR tables), loading it into Excel, and cross-referencing it against a SoD conflict matrix - a process that is time-consuming, error-prone, and only provides a point-in-time snapshot. SAP GRC Access Control automates this process: it maintains a living SoD ruleset (functions and risks), connects to all managed SAP systems in real time, and can flag a violation the moment a role assignment is requested - before it goes live. GRC also manages the full lifecycle: it documents mitigating controls, tracks compensating control reviews, manages access requests with approval workflows, handles emergency access via Firefighter IDs, and runs periodic user access review campaigns. For a SOX-regulated company, GRC is the standard because it produces defensible, auditor-ready evidence automatically rather than requiring manual reconstruction.

Q3What is a Firefighter ID in SAP GRC and what controls must be in place for it to be SOX-compliant?
✅ Strong Answer

A Firefighter ID (also called an Emergency Access ID) is a superuser account in SAP GRC's Emergency Access Management module that gives a named user temporary elevated privileges to perform emergency tasks - like fixing a month-end close issue that requires access outside their normal role. For it to be SOX-compliant, five controls must be in place: First, the ID must be checked out for a specific reason with a business justification recorded in GRC before use. Second, GRC must log every transaction and program executed during the session in the Firefighter log. Third, a designated controller (typically a manager or the security team) must review the log within 24 hours of the session and approve or escalate any unusual activity. Fourth, the approval chain - who requested access, who approved it, what was done, and who reviewed it - must be documented and retained. Fifth, Firefighter IDs must not be shared and must have their own separate audit trail independent of the user's normal ID. Without all five controls operating with evidence, the emergency access process is not a control - it is an SoD bypass.

Q4How does GDPR affect SAP security controls, and what specific SAP features address GDPR requirements?
✅ Strong Answer

GDPR Article 32 requires organisations to implement appropriate technical measures to protect personal data - and SAP stores a vast amount of it: HR personal records (PA02, PA0002, PA0008), customer contact data (KNA1, ADRC), vendor contacts (LFA1), and sales data linked to individuals. The specific SAP features that address GDPR are: (1) SAP Information Lifecycle Management (ILM) for data retention rules and blocking/deletion of personal data at end of retention period; (2) SAP RTPB (Read Access Logging / Transparent Access Logging) which logs every display of personal data fields for accountability under GDPR's right of access; (3) Data Privacy Governance in SAP S/4HANA which provides a purpose-based data access model; (4) SAP Identity Management for controlling who can access personal data and for how long; (5) Field-level encryption in HCM for highly sensitive data like national ID numbers and bank accounts. For an audit, you must verify that personal data is only accessible to users with a legitimate business need, that access is logged, that data is deleted at end of retention, and that a Data Processing Impact Assessment (DPIA) exists for high-risk SAP processes.

Q5What are the most critical SAP profile parameters to check in a security audit?
✅ Strong Answer

The most critical parameters, verified in RZ11, are: login/min_password_lng (minimum 12 characters - weak passwords are a root cause of account takeover); login/fails_to_user_lock (5 or fewer - unlimited attempts enable brute force); login/no_automatic_user_sapstar = 1 (prevents the hardcoded SAP* fallback login which bypasses all authorizations); rsau/enable = 1 (Security Audit Log must be on - if it is off, you have no forensic trail); auth/rfc_authority_check = 1 (without this, RFC callers bypass all authorization checks - a massive security hole); gw/reg_no_conn_info and the gateway security files (prevent unauthorized external programs from registering with the gateway); rdisp/gui_auto_logout = 900 (15 minutes - unattended sessions allow physical access attacks). These seven parameters, if misconfigured, represent the most commonly exploited technical vulnerabilities in SAP security incident forensics.

Q6How do you perform a SAP user access review and what evidence is required for SOX compliance?
✅ Strong Answer

A SOX-compliant User Access Review (UAR) involves five stages with documented evidence at each step. Stage 1 - Scope: Extract all active users and their role assignments for each in-scope SAP system. In GRC, this is the UAR campaign scope. Stage 2 - Manager Review: Send each line manager a report of their direct reports' SAP access, asking them to certify each access as appropriate, modify it, or revoke it. The manager's sign-off (electronic in GRC, or email/form) is the primary audit evidence. Stage 3 - Orphan Accounts: Identify accounts with no manager match (ex-employees) and revoke immediately. Stage 4 - Remediation Tracking: Track all requested changes (revocations, modifications) to confirmed completion, with before-and-after screenshots of role assignments as evidence. Stage 5 - Completion Report: Document the campaign completion rate (SOX requires 100% of in-scope users reviewed) and the control owner's sign-off. The auditor needs: the campaign scope, manager certification records, evidence of changes made, and sign-off from the control owner. In GRC, the GRAC_UAR transaction generates this evidence package automatically.

Q7What is the difference between a Composite Role and a Single Role in SAP, and how does this affect security?
✅ Strong Answer

A Single Role in SAP (PFCG) is a collection of authorization objects and field values that grants specific access - for example, a role that allows reading purchase orders in company code 1000. A Composite Role is a container that bundles multiple single roles together and is assigned to users. The security implications are significant. From a design perspective, composite roles make role management scalable: a "Procurement Manager" composite role might include single roles for PO display, goods receipt, and vendor master display. From an SoD perspective, the SoD conflict usually lives within the composite role - because it combines single roles that individually look safe but together create an SoD conflict (e.g., PO create in one single role and PO release in another, both in the same composite). This is why SoD analysis must be done at the composite role and user level, not just at the single role level. For auditing, the key checks are: does each composite role assignment create any SoD violation, and is the assignment governance (who can assign the composite role) properly controlled?

Q8What is the SAP Security Audit Log (SM20) and why is it critical for compliance?
✅ Strong Answer

The SAP Security Audit Log is SAP's built-in forensic event logging system, configured via SM19 (or RSAU_CONFIG in newer systems) and reviewed via SM20. It records security-relevant events including: successful and failed logins, authorization failures, user master data changes, report starts, and direct table access. Its compliance criticality comes from two dimensions. First, it is the evidence trail that proves controls were operating - without it, you cannot prove that a segregation of duties control actually worked, because you cannot show what actions were taken. Second, it is required by every major compliance framework: SOX IT General Controls require logging of privileged activity; GDPR Article 30 requires records of processing activities; ISO 27001 Annex A.12.4 requires event logging. For an audit, a disabled or incomplete Security Audit Log is an immediate critical finding because it means the organisation cannot demonstrate what happened in the system during the audit period, which invalidates all other controls that depend on audit trail evidence.

Q9How do you audit SAP RFC connections for security risks?
✅ Strong Answer

RFC (Remote Function Call) connections are a frequently overlooked but high-risk area. The audit has three dimensions. First, in SM59, identify all RFC connections and check: (1) Are any dialog user IDs storing passwords? Dialog users with stored passwords in SM59 bypass the password policy and cannot be locked if the user leaves. Only Service or System user types should have stored credentials. (2) Are there trusted RFC connections (SMT1) to systems that should not be trusted? Trusted connections bypass the normal login check, meaning any user on the trusted system can call function modules on the trusting system with the trusted system's authority. (3) Are there connections to unknown or decommissioned systems that should be cleaned up? Second, check the authorization object S_RFC - users with wildcard access on all RFC function groups can call any function module remotely, including ones that read or modify data. Third, verify that SNC encryption is configured for all RFC connections that traverse untrusted networks, to prevent credentials or data from being intercepted. The auth/rfc_authority_check = 1 profile parameter must also be confirmed active.

Q10What is the SAP_ALL profile and why should it never exist in production?
✅ Strong Answer

SAP_ALL is a special profile that grants unrestricted access to every single authorization object, field value, and transaction in the SAP system - it is literally all permissions combined into one. Any user with SAP_ALL can read any data, change any configuration, create any user, post any transaction, delete any record, and bypass every control in the system. In a production SAP system it should never exist because: it represents a total SoD violation (one person can do everything), it makes it impossible to enforce least-privilege principles, it bypasses all change management controls (a user with SAP_ALL can change directly in production without transport), it violates every compliance framework that requires access limitation, and in a forensic investigation of fraud, a user with SAP_ALL has no transactions outside their capability - every action is equally plausible. The only legitimate use case is a fully documented, time-limited, GRC Firefighter ID used for emergency break-glass scenarios with full session logging and immediate post-use review. If SAP_ALL is found on any regular user in production, that is a critical audit finding requiring immediate remediation.

Q11How would you structure a SAP security audit report for the Board / Audit Committee?
✅ Strong Answer

A Board-level SAP security audit report should have four sections. Section 1 - Executive Summary: A one-page summary with a red/amber/green dashboard showing the overall risk rating, number of critical and high findings, year-on-year trend, and the top 3 risks requiring immediate board attention. Section 2 - Critical Findings: For each critical finding, state the finding name, the risk it creates in business terms (not technical), which compliance framework it affects (SOX/GDPR/ISO 27001), the recommended action, the accountable owner, and the target remediation date. Section 3 - Compliance Status: A compliance heatmap showing which regulatory obligations are met, partially met, or not met, with the current year's UAR completion rate, SoD remediation rate, and patch compliance rate. Section 4 - Remediation Roadmap: A 6-12 month remediation plan with milestones, resource requirements, and the expected risk reduction from each remediation. What boards want is risk translated into business impact - potential fraud loss, regulatory fine exposure, and reputational risk - not technical details about profile parameters.

Q12What is a compensating control for an SoD violation and what makes it effective?
✅ Strong Answer

A compensating control is an alternative control that mitigates the risk of an SoD conflict when the SoD violation cannot be remediated (because role re-design would impair business operations). For it to be accepted by auditors, it must be: Detective in nature (it catches the problem if it occurs, even if it does not prevent it); Independent (performed by someone with no involvement in the conflicting activities); Evidence-based (produces a documented record that can be reviewed); Timely (reviewed frequently enough to catch issues before material damage occurs - monthly for financial transactions, quarterly minimum for lower-risk areas); and Monitored (has an owner who is accountable for performing the review). An example: a user has both purchase order creation and PO approval capability. The compensating control is a monthly management report of all POs where the creator and approver are the same person, reviewed and signed by the CFO. What makes it effective: it is actually performed (not just documented), the reviewer has no financial interest in the transactions reviewed, and exceptions are investigated and documented. What makes it weak - and a SOX finding - is if the review is done but there is no evidence (no signed report), or if it is done but exceptions are never investigated.

Q13How do you audit SAP transport management for SOX change management compliance?
✅ Strong Answer

SAP transport management is a key SOX IT General Control (ITGC) because it controls how code and configuration changes reach the production system. The audit has four dimensions. First, verify the transport route configuration in STMS - changes must flow DEV to QAS to PRD, and the production client's SCC4 settings must prevent direct changes. Second, check for any emergency transports (corrections) imported directly to production bypassing QAS. Every such transport must have a documented emergency change ticket and post-import testing evidence. Third, review who has transport release authority (S_TRANSPRT, SE09/SE10) in production. Only a designated change manager should be able to release and import transports to production. Developers should not be able to import their own changes to production. Fourth, sample-test a selection of transports imported in the audit period and verify each has: a change ticket reference, test evidence from QAS, a business approval, and a deployment sign-off. Any transport without a complete approval chain is a SOX change management finding.

Q14What does DORA mean for organisations using SAP in financial services?
✅ Strong Answer

DORA - the Digital Operational Resilience Act - became effective for EU financial sector firms from January 2025. For organisations using SAP as their core ERP for banking, insurance, or investment management, DORA introduces four direct obligations. First, ICT Risk Management: firms must maintain a comprehensive ICT risk management framework that includes SAP in its scope - meaning SAP must have documented threat models, risk assessments, and control frameworks updated annually. Second, ICT Incident Reporting: any cybersecurity incident affecting SAP (data breach, ransomware, unauthorised access) that has operational impact must be reported to the regulator within defined timeframes (typically 4 hours for major incidents). Third, Digital Operational Resilience Testing: firms must conduct annual penetration testing of their critical ICT systems - SAP is typically in scope as a critical system. From 2025, Threat-Led Penetration Testing (TLPT) is required for the most significant firms. Fourth, Third-Party ICT Risk: SAP itself (as a software provider) and any SAP managed service provider must be subject to the firm's third-party ICT risk management programme - including contractual requirements for security standards and audit rights. The practical audit check is: does the organisation's ICT risk register include SAP, and do all four DORA requirements have documented evidence of compliance?

Q15How do you prioritise SAP security audit findings for remediation?
✅ Strong Answer

Prioritisation uses a risk-based framework across three dimensions. First, Likelihood × Impact: rate the likelihood that the vulnerability will be exploited (considering who has the access, how often they use it, and whether there are detective controls) and the potential impact (financial loss from fraud, regulatory fine, data breach cost). Critical × High impact findings get immediate remediation deadlines - typically 30 days for critical, 90 days for high. Second, Regulatory Impact: any finding that is likely to be a SOX material weakness, a GDPR breach notification trigger, or a DORA major incident criterion automatically gets the highest priority regardless of the internal risk score - because the regulatory consequence is externally imposed. Third, Control Dependency: some findings are foundational - for example, if the Security Audit Log is disabled, all downstream audit trail controls are ineffective. Foundational failures get priority over symptoms. In practice, the remediation order for a typical SAP audit would be: (1) Disable unused SAP* and DDIC accounts - 24 hours; (2) Remediate unmitigated critical SoD conflicts - 30 days; (3) Lock inactive user accounts - 30 days; (4) Enable and configure Security Audit Log - 30 days; (5) Apply critical security notes - 60 days; (6) Design and implement compensating controls for remaining SoD violations - 90 days; (7) Role redesign and restructuring - 6 months.

📑 Master SAP Security Audit Quick Reference - T-Codes And Tables

SAP Security Audit T-Code Master Reference - 2026–27
T-CodeAreaWhat It Does for AuditorsRisk Level
SU01User AdminView / create / modify user accounts - check lock status, validity dates, user typeCRITICAL
SU10User AdminMass user maintenance - export user list with last login dates for inactive user analysisCRITICAL
SUIMUser InfoSAP Information System - find users by profile, role, authorization object, or last logonCRITICAL
PFCGRolesRole maintenance - view role design, authorization objects, and user assignmentsCRITICAL
SM19Audit LogSecurity Audit Log configuration - verify which event classes are being capturedCRITICAL
SM20Audit LogRead the Security Audit Log - search for specific users, events, or time rangesCRITICAL
SM21System LogSAP System Log - all system-level events, errors, and security messagesHIGH
RZ11ParametersView and verify all SAP profile parameters including security settingsCRITICAL
SCC4ClientsClient settings - verify production client prevents direct changesCRITICAL
STMSTransportTransport Management System - verify transport routes and import historyCRITICAL
SM59RFCRFC connection maintenance - audit stored credentials and trusted connectionsCRITICAL
SMT1RFC TrustView trusted RFC systems - identifies all systems with bypass login trustCRITICAL
SMGWGatewayGateway monitor - check gateway security configuration and active connectionsHIGH
SICFICF ServicesList all active HTTP/HTTPS services - identify services that should be disabledHIGH
SE37FunctionsFunction module browser - used to verify RFC-enabled function modulesHIGH
SCICode InspectorSAP Code Vulnerability Analyser - scan ABAP programs for security weaknessesHIGH
GRAC_ARAGRCGRC Access Risk Analysis - run SoD reports for users, roles, and HR objectsCRITICAL
GRAC_SPMGRC EAMGRC Emergency Access Management - view Firefighter ID logs and review statusCRITICAL
Key SAP Security Audit Tables - Direct Evidence Sources
TableDescriptionAudit Use
USR02User logon data - password, lock status, last loginFind inactive users, locked accounts, failed login counts
AGR_USERSRole to user assignment - every role assigned to every userCheck role validity dates, identify expired but still-assigned roles
AGR_1251Role authorization values - the actual authorization object values per roleIdentify roles with wildcard (*) values on sensitive auth objects
USR04User profile assignments - profiles directly assigned to usersFind users with SAP_ALL or SAP_NEW profiles
USR10User authorization profile indexCross-reference profiles to users for superuser identification
PRGN_CUSTGRC and authorization customising settingsVerify authorization check settings are configured correctly
RSAUPROTSecurity Audit Log entriesQuery audit events directly for specific users or time ranges
DBTABPRTTable change log - changes made to any logged database tableVerify changes to USR02, LFA1, KNA1, T001 were authorised

📖 Related SAP Tutorials

SAP Joule · AI Prompts

How to Write Effective SAP Joule Prompts

The RACE formula, 50+ prompt examples, weak-to-strong rewrites across FI MM SD HR, advanced techniques, and 10 interview Q&As.

Read Tutorial
SAP Joule AI Prompts · Real

How to Automate – SAP MM Configuration Using SAP Joule AI Prompts

Learn how to use SAP Joule to automatically set up and complete every key SAP MM configuration step.

Read Tutorial
SAP Interview · Freshers

SAP Fresher Interview Preparation

Complete fresher guide — 50+ Q&As, module selection, T-code cheat sheet, P2P walkthrough, salary guide, and 7-day prep plan.

Read Tutorial