SAP transaction codeObjectSU10ModuleSECURITY_GRC

SU10 — SU10 Mass User Maintenance

SU10 is the mass user maintenance transaction. It applies the same change to a list of users in one run instead of maintaining each user individually in SU01 - address data, logon data, roles, profiles, groups, parameters, or validity dates. It opens the same underlying maintenance screens as SU01, but only fields with the change indicator ticked are actually written.

This page covers what SU10 actually writes when it saves, the real step sequence for a mass change, and the failure patterns that most often produce silent no-ops or unintended access loss. It focuses on diagnosing why a mass change appeared to do nothing, why some users were skipped, or why access disappeared for users who were not the intended target.

Reviewed by an ERPClimb SAP consultant on 15 Sept 2026· 1,286 words

Diese Seite ist noch nicht auf Deutsch verfügbar.

Purpose

SU10 is the mass user maintenance transaction. It lets an administrator select a list of users - manually, by upload, or by selection criteria such as role, profile, user group, or company - and apply one change to all of them in a single run: address data, logon data, roles, profiles, groups, parameters, or validity dates. The structural fact that explains most confusion: SU10 does not maintain a separate object. It drives the same tab-by-tab maintenance dialogs as SU01, one user at a time internally, but only the tab and the specific field or line marked with the change indicator is written back on save. A value typed into a field without the checkbox ticked is displayed but never persisted, which produces the common complaint that a mass change ran cleanly with no errors and changed nothing.

When it is used

SU10 is reached for whenever a change needs to apply to more than a handful of users: mass onboarding after an acquisition, org restructuring, annual role recertification cleanup, mass lock during an audit finding, or removing a decommissioned role from every user who still holds it. For one or two users, SU01 is faster and safer since it shows the full picture for that user rather than a batch view. For role content itself - what a role actually grants - the tool is PFCG, not SU10; SU10 only assigns or removes the role, it does not shape what is inside it. On S/4HANA, identity lifecycle Fiori apps may sit on top for workflow-driven provisioning, but for a direct, no-workflow bulk change, SU10 is still the tool an administrator opens first.

How to use it in practice

The sequence matters more than any single screen; skipping the review step is where most unintended changes originate.

  • Call SU10 and choose the selection method: manual entry of user IDs, file upload, or complex selection by role, profile, user group, or other criteria.
  • Review the resulting user list on the Users tab and manually deselect any user that should not receive the change - selection criteria do not self-filter for exceptions.
  • Open the target tab (Address, Fixed values, Logon data, SNC, Defaults, Parameters, Roles, Profiles, Groups, Personalization, Licence data).
  • Enter the new value and tick the change indicator next to each field or row that must actually be applied - unmarked fields are ignored even if populated.
  • For Roles or Profiles, choose Assign or Delete explicitly and set validity dates if assigning.
  • Execute the save and review the per-user success/failure log before closing the session.
  • For selections in the thousands, schedule the change as a background job rather than running it online to avoid a mid-save timeout.

Key data objects

The save writes into the same master tables SU01 would, per user, for every field flagged as changed.

  • USR02 - logon data: password status, lock flag, validity window, and the user group field, updated by the Logon data and Fixed values tabs.
  • AGR_USERS - role-to-user assignment with from/to validity dates, written by the Roles tab when a role is assigned or removed.
  • UST04 - direct profile-to-user assignment, touched by the Profiles tab when profiles are assigned outside of role-driven generation.
  • USR21 - cross-reference linking the user master to the business address record, updated by the Address tab.
  • USR05 - user parameter ID and value pairs, written by the Parameters tab.

How to prove it in the data

To confirm a mass role change actually landed, query AGR_USERS filtered on the role name and the validity date range used in SU10, and compare the returned user list against the intended selection list from that run. To confirm a lock or logon change, check USR02 on the lock flag and validity fields for the same user set, timestamped close to the change. To trace who ran the change and when, check the user master change documents (CDHDR/CDPOS for the user object) since SU10 itself keeps no separate change log of its own.

ECC vs S/4HANA

SU10 and the tables it writes to are unchanged on S/4HANA; the same tab-driven mass maintenance logic applies. Identity and access management Fiori apps exist for workflow-driven provisioning and approval chains, but they operate on top of the same user master tables rather than replacing them. For a direct bulk change with no approval workflow requirement, SU10 remains the immediate tool in both ECC and S/4HANA.

Common pitfalls and how to diagnose them

Failures fall into a small number of repeatable categories; work through them in this order before assuming a bug.

  • Stale selection scope: complex selection by role or user group captures a snapshot at the moment the list is built, not a live query. Users assigned the role after selection but before save are missed. Re-run the selection immediately before saving for any time-sensitive mass change.
  • Unchecked change indicator: a value entered in a field without the row or field checkbox marked is displayed but never written. The symptom is a clean save with no visible effect. Check whether the change flag was ticked, not whether the field shows a value.
  • Validity window overwrite: assigning a role or profile to a mixed list with one uniform validity window can shorten or extend access for users who already held it under a different window, sometimes deactivating access the user still needed. Compare AGR_USERS before and after for the affected users specifically, not just the newly added ones.
  • Authorization-based silent exclusion: SU10 access itself does not guarantee the ability to change every user or every value. Authorization objects controlling scope by user group, profile, or role assignment can gray out or skip users outside the administrator's authorized range without a clear error message. Check the administrator's own authorization scope before assuming the transaction malfunctioned.
  • Timeout on large batches: an online mass change against several thousand users can time out partway through, leaving some users processed and some not. Check the per-user execution log tab by tab, and schedule large runs as background jobs rather than foreground.
  • No dedicated audit trail: SU10 does not log its own history separately from the standard user master change documents and the security audit log. If those logging options are disabled, reconstructing what a past mass change actually did becomes difficult or impossible.

Whose problem this is

This is a security/user administration problem, not ABAP or Basis, unless the transaction is inaccessible or a large batch is timing out for performance reasons. A good handover includes the exact selection criteria used, the tab and fields changed with the change indicators applied, the execution log, and a comparison of the intended target list against the users actually affected.

Related SAP objects

Reviewed pages this object connects to in the ERPClimb knowledge graph.

Source: ERPClimb — https://erpclimb.com/sap-tcodes/su10ERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.