P_PERNR — P_PERNR Authorization Object for Own HR Data
P_PERNR is the HR authorization object that restricts access to an employee's own personnel number data, typically used for self-service and 'view/maintain own record' scenarios. It is checked in addition to P_ORGIN, but only if the AUTSW PERNR switch in table T77S0 has been activated. If that switch is off, P_PERNR is never evaluated, no matter what the role contains.
This page covers P_PERNR, the HR master data authorization object that governs a user's access to their own personnel number, layered on top of the standard org-based P_ORGIN check. It focuses on the T77S0 switch that turns the check on or off, where the check fires in the infotype framework, and how to trace a failure without wrongly blaming the role first.
Published 16 Sept 2026· 937 words
What it protects
P_PERNR restricts what a user can do with the personnel number attached to their own employment record, typically infotype read or maintenance in ESS-type scenarios, self-service infotype changes, or PA20/PA30 access limited to 'my own data'. It sits alongside P_ORGIN, which restricts data by org structure attributes such as personnel area, employee group and subgroup. The structural fact that explains almost every confusion around this object: P_PERNR is only evaluated if the HR authorization main switch AUTSW PERNR in table T77S0 is turned on. With the switch off, the object is completely inert, the role can contain any value, correct or wrong, and it will have zero effect on the check outcome. Consultants who add or fix P_PERNR values in a role while the switch is off will see no change in behaviour and wrongly conclude the fix did not work.
Fields checked
- AUTHC - authorization level for the personnel number check, controlling whether the access is read-only or allows maintenance of the own record
- PSIGN - sign of the personnel number value, marking whether the PERNR value listed is included in or excluded from the allowed range
- PERNR - the personnel number(s) the check applies to; in practice this is populated with a derived reference to the user's own record rather than a static list, so the check resolves dynamically per logged-on user
Where it is checked
The check fires inside the standard HR authorization check routine used by the infotype framework, immediately after the P_ORGIN check, whenever the AUTSW PERNR switch is active. This means it is evaluated on every infotype read or write triggered through PA20, PA30, PA40 personnel actions, and any custom or standard program that reads personnel data through the logical database PNP or the HR infotype API function modules. ESS and MSS scenarios that route through these same infotype operations inherit the same check, so a self-service tile failing to show a record is frequently a P_PERNR issue rather than a Fiori catalog or role assignment issue. In hybrid or side-by-side landscapes where core HR stays on-premise and SuccessFactors handles employee-facing processes, this check still applies on the on-premise system whenever a process falls back to PA20/PA30 or a report against infotype data, so it remains relevant even in a SuccessFactors-led landscape.
How to trace a failed check
Start with SU53 run immediately after the failed action, since HR checks can be overwritten by a later unrelated check if the user tries something else first. If SU53 shows P_ORGIN failing, check that first; if it shows P_PERNR failing, note the exact PERNR and AUTHC values shown as required versus the values in the user's role. Before escalating, check table T77S0 for the AUTSW PERNR switch value, since a P_PERNR failure with the switch turned off is impossible and points to stale SU53 data or a different object misread. If SU53 is inconclusive, run an authorization trace (ST01 or the newer trace transaction) for the exact user, transaction and personnel number involved, then filter for object P_PERNR. Hand security the transaction code, the personnel number that failed, the infotype and subtype if known, and the AUTHC value required, not just a screenshot of the error message.
Whose problem this is
This sits between functional HR and security. Functional confirms which infotype, transaction and personnel number are involved and whether the AUTSW PERNR switch should be active for this client. Security confirms the role's PERNR field derivation and AUTHC value. A good ticket includes the user ID, transaction, infotype/subtype, the personnel number expected, and the SU53 or trace extract, not a general 'no access' description.
Common pitfalls
Most P_PERNR failures are diagnosed as role problems when the real cause is the T77S0 switch, or vice versa, and the two get fixed in the wrong order. A role that looks fully correct on paper still fails if the PERNR field was populated with a static personnel number captured during role build rather than a dynamic reference to the current user, which breaks the moment that user's own record changes or a new hire is onboarded into a copied role. Activating the AUTSW PERNR switch for the first time without auditing existing roles locks out large groups of users overnight, because roles built when the switch was off never needed a PERNR value and now fail by default. Consultants sometimes assume P_ORGIN alone should be sufficient and add restrictive org values there, without realising P_PERNR runs independently and can block access even when P_ORGIN is wide open. Confusing P_PERNR with structural authorizations for org-structure-based access is another common error; they solve different problems and neither substitutes for the other.
- Switch and role fixed in the wrong order, so the visible fix appears to do nothing
- PERNR field hardcoded instead of derived dynamically, breaking for new or changed users
- Switch activated without auditing existing roles first, causing a mass lockout
- P_ORGIN tightened to compensate, while P_PERNR independently blocks the same access
- Mistaking this object for structural authorization used in org-based reporting scenarios
Related SAP objects
Reviewed pages this object connects to in the ERPClimb knowledge graph.
Source: ERPClimb — https://erpclimb.com/sap-auth-objects/p-pernrERPClimb is an independent platform and is not affiliated with SAP SE. Reference pages are written and reviewed by SAP consultants for learning and troubleshooting.