Newsletter

Zugriff auf die SAP-Tabelle USR02 mit PFCGMASSVAL begrenzen

In unseren vorangegangen Blog-Beiträgen zu USR02 haben wir die Grundlagen der Tabelle USR02 behandelt und einen tieferen Einblick in die Handhabung von Passwort-Hashes in SAP-Systemen gegeben. In vielen Systemlandschaften bleibt jedoch eine zentrale Frage unbeantwortet: Warum haben so viele Benutzer direkten Zugriff auf die Tabelle USR02?

Trotz ihrer Kritikalität stoßen wir häufig auf Produktivsysteme, in denen der Zugriff auf USR02 weit verbreitet vergeben wird und oft ohne eindeutige betriebliche Rechtfertigung. Typische Anwendungsfälle sind das Überprüfen des Sperrstatus oder grundlegender Benutzerinformationen, obwohl Transaktionen wie SU01 oder SUIM diese Funktionalität bereits kontrolliert bereitstellen.

Wenn die Betroffenen auf die Thematik angesprochen werden, fallen die Aussagen meist ähnlich aus: „Warum habe ich überhaupt diesen Zugriff?“ oder „Woher soll ich wissen, welche Tabellen kritisch sind?“ Dies sind keine individuellen Fehler, sondern Symptome einer unzureichenden Berechtigungsverwaltung.

In diesem Blog fokussieren wir uns auf die praktische Bereinigung von Rollen, die Zugriff auf USR02 gewähren, mithilfe der Transaktion PFCGMASSVAL. Wir zeigen, wie betroffene Rollen identifiziert, geeignete Berechtigungswerte für S_TABU_DIS und S_TABU_NAM definiert, Änderungen sicher simuliert und schließlich im großen Umfang durchgesetzt werden können.

Inhalt

Was ist Transaktion PFCGMASSVAL?

Die Transaktion PFCGMASSVAL ist für die Massenpflege von Berechtigungsdaten in Rollen innerhalb des SAP-Systems konzipiert. Sie ermöglicht die gleichzeitige Anpassung eines einzelnen Berechtigungsobjekts auf mehrere Rollen. Dadurch wird die Funktionalität der Standard-Transaktion zur Rollenpflege (PFCG) erweitert. Die manuelle Pflege dieser Rollen in PFCG wäre sowohl ineffizient als auch fehleranfällig.

Wozu ist PFCGMASSVAL fähig?

Grundsätzlich kann die Transaktion verschiedene Änderungen an einer ausgewählten Menge von Rollen durchführen (Massenpflege).

Zu den wichtigsten Arten von Feldänderungen gehören:

  • Berechtigungsobjekt: Änderung eines spezifischen Berechtigungsobjekts einschließlich seiner Felder. Alle Rollen, die dieses Objekt enthalten, werden mit den neuen Werten des Berechtigungsobjekts aktualisiert.
  • Berechtigungsfeld (objektübergreifend): Änderung des Werts eines Berechtigungsfeldes. Alle Berechtigungsobjekte, die dieses Feld enthalten, werden mit dem neuen Wert aktualisiert.
  • Manuelle Änderung: Hinzufügen oder Löschen von Berechtigungsobjekten sowie Aktivieren oder Deaktivieren einzelner Berechtigungsobjekte.
PFCGMASSVAL: Arten der Feldänderung

PFCGMASSVAL Ausführungsmodi

Die Transaktion bietet drei Modi, mit denen die Rollenänderungen implementiert werden können.

Direkte Ausführung

Änderungen werden sofort ohne vorherige Simulation umgesetzt und in der Ergebnisliste angezeigt.

Simulation

Änderungen werden nur simuliert und in der Ergebnisliste angezeigt. Die betroffenen Rollen werden während der Simulation gesperrt. Es werden Berechtigungsprüfungen durchgeführt.

Ausführung mit vorheriger Simulation

Hierbei handelt es sich um eine Kombination der beiden anderen Modi. Zunächst wird eine Simulation durchgeführt, anschließend können die potenziellen Änderungen überprüft und schließlich ausgeführt werden.

Gemäß SAP Hinweis 2324041 sollten alle geplanten Änderungen vor der Massenpflege an Rollen simuliert werden. Durch diese Vorgehensweise können die geplanten Anpassungen im Voraus überprüft werden. So wird sichergestellt, dass ausschließlich korrekte und gewünschte Änderungen umgesetzt werden.

Wie kann man auf USR02 zugreifen und was ist unsere Empfehlung?

Der Zugriff auf die Tabelle USR02 wird über die Berechtigungsobjekte S_TABU_DIS und S_TABU_NAM mittels der Felder DICBERCLS (Tabellenberechtigungsgruppe) und TABLE (Tabellenname) gesteuert.

Hinweis: Zusätzlich zu den Berechtigungsobjekten S_TABU_DIS und S_TABU_NAM kann über den ABAP-Debugger auf Tabelleninhalte zugegriffen werden. Hierfür sind entsprechende Berechtigungen wie S_DEVELOP oder S_DBG erforderlich.

Der Einsatz des Debuggers zum Lesen sensibler Tabellen wie USR02 ist jedoch kritisch zu bewerten, da hierbei reguläre Berechtigungsprüfungen umgangen werden können und somit erhebliche Sicherheitsrisiken entstehen.

Mehr Informationen finden Sie in unserem Blog S_DEVELOP vs S_DBG: Unterschiede, die jeder SAP Admin kennen muss!

Bei der Festlegung der zu pflegenden Werte für Tabellenname und Tabellenberechtigungsgruppe sind zwei Aspekte zu berücksichtigen:

  1. Die Tabelle USR02 selbst sowie ihre Berechtigungsgruppe dürfen in keiner Rolle enthalten sein (ausgenommen reiner Lesezugriff in dedizierten SAP-Administratorrollen). In älteren ECC-Systemen ist die standardmäßige USR02-Berechtigungsgruppe SC, in S/4HANA ist es SPWD.
  2. Das Feld TABLE ist so granular wie möglich zu pflegen und sollte ausschließlich explizit freigegebene Tabellen enthalten. Zudem sind nur die zwingend erforderlichen Aktivitäten zu vergeben.

Der erste Aspekt ist allgemeingültig und definiert, welche Werte ausgeschlossen sein müssen. Der zweite Aspekt ist kundenspezifisch und legt fest, welche Werte zwingend erforderlich sind. In manchen Fällen ist eine vollständige Entfernung möglich, häufig bleibt jedoch ein eingeschränkter Tabellenzugriff fachlich notwendig.

Hinweis: Da Tabellenberechtigungsgruppen manuell geändert werden können, sollte geprüft werden, welcher Berechtigungsgruppe die Tabelle USR02 aktuell zugeordnet ist und welche weiteren Tabellen dieser Gruppe angehören.

SAP empfiehlt, die Tabellenberechtigungsgruppe von USR02 gemäß SAP Hinweis 1484692 auf SPWD zu setzen.

Weitere Informationen zu den Grundlagen von USR02 sowie zur Überprüfung der zugeordneten Tabellenberechtigungsgruppe finden Sie in unserem Blog USR02 spielt eine kritische Rolle in der SAP-Sicherheit.

Wie werden Rollen mit PFCGMASSVAL bereinigt?

Ziel ist es nun, mithilfe der Transaktion PFCGMASSVAL den rollenbasierten Zugriff auf die Tabelle USR02 einzuschränken, indem die entsprechenden Werte der Berechtigungsobjekte in den betroffenen Rollen angepasst werden.

Der Bereinigungsprozess umfasst folgende Schritte:

  1. Rollen identifizieren
  2. Rollen-Backup
  3. Konfiguration
  4. Simulation
  5. Ausführung

Rollen mit USR02-Zugang identifizieren

Nachdem S_TABU_DIS und S_TABU_NAM als relevante Berechtigungsobjekte zur Einschränkung des Zugriffs auf die Tabelle USR02 identifiziert wurden, kann analysiert werden, welche SAP-Rollen diese Berechtigungen enthalten. Hierfür kann entweder direkt die Transaktion PFCGMASSVAL genutzt werden, um rollenbasiert nach Berechtigungsobjekten zu selektieren, oder alternativ die Transaktion SUIM.

Zur Identifikation der betroffenen Rollen gehen Sie wie folgt vor:

  1. Starten Sie die Transaktion PFCGMASSVAL.
  2. Klicken Sie auf „Rollen mit Berechtigungsdaten“.
  3. Fügen Sie unter „Selektion nach Berechtigungswerten“ das Berechtigungsobjekt S_TABU_DIS (bzw. S_TABU_NAM) mit den entsprechenden Werten hinzu und klicken Sie auf „Ausführen“.
    • S_TABU_DIS: DICBERCLS = „SPWD“
    • S_TABU_NAM: TABLE= „USR02“
  4. Als Ergebnis werden alle Rollen angezeigt, die den definierten Kriterien entsprechen.
  5. Markieren Sie die Rollen, die bereinigt werden sollen, und wählen Sie „Übernehmen“.
PFCGMASSVAL: Rollenidentifizierung
PFCGMASSVAL: Übersicht aller Rollen, die Zugang zu USR02 ermöglichen

Hinweis: Die identifizierten Rollen sind hinsichtlich ihrer Verwendung und ihres fachlichen Zwecks zu bewerten. Rollen, die speziellen Administratorbenutzern zugewiesen sind oder Bestandteil von Firefighter- bzw. Notfallkonzepten sind, enthalten in der Regel Berechtigungen für den Zugriff auf die Tabelle USR02.

Die fachliche Verantwortung für diese Bewertung liegt bei den jeweils zuständigen Teams oder Fachbereichen. Wir bei smarterSec unterstützen jedoch mit einer Orientierungshilfe und skizzieren einen bewährten Vorgehensansatz.

Backup der Rollen erstellen

Bevor Massenänderungen an Rollen durchgeführt werden, sollte unbedingt ein Backup erfolgen. Gehen Sie dazu wie folgt vor:

  1. Starten Sie die Transaktion PFCG.
  2. Wählen Sie „Mehr“ > „Hilfsmittel“ > „Massendownload“.
  3. Tragen Sie die zu sichernden Rollen ein und klicken Sie auf „Ausführen“.
  4. Legen Sie Dateiname und Speicherpfad fest und klicken Sie auf „Speichern“.

Hinweis: Rollen können auch nach dem Simulationsschritt in PFCGMASSVAL gesichert werden. Wir empfehlen jedoch, die Rollen separat über PFCG zu exportieren, um sicherzustellen, dass das Backup zuverlässig erstellt und nicht übersehen wird.

Konfigurationen in PFCGMASSVAL

Nachdem die Rollen gesichert sind, kann mit der eigentlichen Risikomitigation begonnen werden. In unserem Szenario wurden folgende Rollen identifiziert, die Zugriff auf USR02 enthalten und daher gepflegt werden sollten:

  • Z_USR02_TEST_1:
    • S_TABU_DIS, DICBERCLS = BAF4, SPWD, …
    • S_TABU_NAM, TABLE = USR02, …
  • Z_USR02_TEST_2:
    • S_TABU_DIS, DICBERCLS = *
    • S_TABU_NAM, TABLE = *
  • Z_USR02_TEST_3:
    • S_TABU_DIS, DICBERCLS = *
    • S_TABU_NAM, TABLE = USR02, …

Stellen Sie sicher, dass Sie „Ausführung mir vorhergehender Simulation“ auswählen, bevor Sie fortfahren.

PFCGMASSVAL: Auswahl des Modus „Ausführung mir vorhergehender Simulation“

In unserem Beispiel entfernen wir die Tabellenberechtigungsgruppe SPWD aus S_TABU_DIS sowie die Tabelle USR02 aus S_TABU_NAM. Da Berechtigungen auch über die Wildcard (*) vergeben werden können, wird diese ebenfalls aus beiden Berechtigungsobjekten entfernt.

Bitte beachten Sie, dass durch das Entfernen der Wildcard (*) auch der Zugriff auf alle anderen Tabellen und Tabellenberechtigungsgruppen entfällt. In diesem Beispiel wird dieser Ansatz der Übersicht halber gewählt, in der Praxis sollten alternative Berechtigungswerte sorgfältig geprüft und fachlich abgestimmt werden. Grundsätzlich wird davon abgeraten, „alle“ Berechtigungen innerhalb eines Berechtigungsobjekts zu vergeben.

Fügen Sie anschließend das Berechtigungsobjekt und die Werte hinzu, die gelöscht oder angepasst werden sollen. Die Auswahl entspricht dem nachfolgenden Screenshot. Sobald die Konfiguration abgeschlossen ist, klicken Sie auf „Ausführen“, um fortzufahren.

PFCGMASSVAL: Konfiguration

Simulation

Im Simulationsmodus sind die Auswirkungen der geplanten Änderungen sorgfältig zu prüfen. Sichern Sie die Rollen über „Alte Werte“, sofern dies noch nicht erfolgt ist.

PFCGMASSVAL: Simulation „Löschen“

Das Löschen der Tabellenberechtigungsgruppe SPWD aus der Rolle Z_USR02_TEST_1 wird durch das Minuszeichen gekennzeichnet. Von dieser Änderung bleiben die Aktivitäten unberührt; ebenso besteht der Zugriff auf die Tabellenberechtigungsgruppe SPWD weiterhin über die Wildcard (*). Um auch das Löschen der Wildcard aus dem Berechtigungsobjekt und damit den vollständigen Entzug des Zugriffs auf SPWD zu simulieren, muss die Transaktion erneut ausgeführt werden.

Im nächsten Szenario wurde die Option „Ersetzen“ anstelle von „Löschen“ gewählt, um die Wildcard aus den Rollen zu entfernen und stattdessen die Tabellenberechtigungsgruppen BAF4, BAST und KCA zuzuweisen. Die Simulation stellt sich wie folgt dar:

PFCGMASSVAL: Simulation „Ersetzen“

Änderungen am Berechtigungsobjekt S_TABU_NAM erfolgen nach einem vergleichbaren Vorgehen. Anstelle von Tabellenberechtigungsgruppen sind hier jedoch konkrete Tabellennamen zu pflegen. So sind beispielsweise die Tabelle USR02 sowie der generische Wert * im Feld TABLE zu ersetzen.

Prüfen Sie anschließend die Auswirkungen in der Simulation und führen Sie die Änderungen mit „Ausführen“ (F8) durch.

Ausführung

Das Ergebnis zeigt, welche Rollen aktualisiert wurden und welche unverändert geblieben sind. In diesem Beispiel ist ausschließlich die Rolle Z_USR02_TEST_1 von der Entfernung der Tabellenberechtigungsgruppe SPWD betroffen.

PFCGMASSVAL: Zusammenfassung der Ausführung

In dieser Phase können die Berechtigungen in den betroffenen Rollen manuell überprüft und bei Bedarf angepasst werden, um die Änderungen zu bestätigen. Wie im folgenden Screenshot zu sehen ist, wurde die Tabellenberechtigungsgruppe SPWD entfernt, was den erfolgreichen Abschluss des Vorgangs bestätigt.

PFCGMASSVAL: Berechtigungen der Rolle Z_USR02_TEST_1


Bei der Überprüfung der Rolle fällt auf, dass die generierten Profile nicht aktuell sind. Um die Änderungen abzuschließen, müssen die Profile daher neu generiert werden. Das Entfernen der Wildcards (*) verläuft vergleichbar.

Wrap-up

In unserem Szenario wurde nach vier Durchläufen der Transaktion PFCGMASSVAL der Zugriff auf USR02 vollständig entfernt. Hierfür mussten sowohl die Wildcards (*) als auch die spezifischen Werte (SPWD, USR02) aus den jeweiligen Berechtigungsobjekten entfernt werden.

Auf den ersten Blick mag dieses Vorgehen für lediglich drei Rollen, die auch manuell angepasst werden könnten, aufwendig erscheinen. Der Aufwand wird insbesondere dann sinnvoll, wenn viele Rollen mit denselben Berechtigungen angepasst werden müssen.

Wie kann smarterSec Sie unterstützen?

Die smarterSec Security Platform ermöglicht Unternehmen, ihre SAP-Landschaft zu überwachen und Benutzer zu identifizieren, die Zugriff auf kritische Tabellen wie USR02 besitzen.

Darüber hinaus erlaubt unser hauseigenes SAP_ALL Reduction Tool eine Analyse der tatsächlichen Benutzeraktivitäten. Auf Basis realer Nutzungsmuster können daraus optimierte Rollen abgeleitet werden, sodass Benutzer nur die Berechtigungen behalten, die sie tatsächlich benötigen. Unnötige Zugriffsrechte werden so deutlich reduziert.

Der Schutz hochsensibler Tabellen wie USR02 erfordert häufig Anpassungen etablierter Prozesse, insbesondere dort, wo traditionell direkter Tabellenzugriff genutzt wurde. Da diese veralteten Vorgehensweisen schrittweise abgeschafft werden, unterstützt smarterSec Sie als kompetenter Managed Security Service Provider für SAP und empfiehlt auf Basis langjähriger Erfahrung sichere und praktikable Alternativen für Aufgaben, die zuvor über den direkten Zugriff auf USR02 durchgeführt wurden.

Fazit

Die konstante Pflege des Zugriffs aus USR02 ist ein entscheidender Schritt hin zu einer stärkeren SAP-Berechtigungsverwaltung. Mit der Transaktion PFCGMASSVAL lassen sich Rollen auch im großen Maßstab effizient analysieren und anpassen. Durch das Entfernen unnötiger Berechtigungen können Unternehmen Risiken erheblich reduzieren und sicherstellen, dass der Zugriff auf sensible Tabellen wie USR02 strikt auf das tatsächlich erforderliche Maß beschränkt bleibt.

Bei smarterSec unterstützen wir diesen Prozess mit der smarterSec Security Platform und unseren fachkundigen SAP Security Beratung. Wir helfen Unternehmen, bestehende Risiken zu beheben und nachhaltige sowie transparente Autorisierungskonzepte für die Zukunft zu etablieren.

Weitere Blogs und Quellen

Haben Sie fragen?

Dann kontaktieren Sie uns!