
Berechtigungsprüfungen in Z-Reports – Quellcodeanalyse im Transportprozess

Die Verwendung von Authority Checks in selbst entwickelten ABAP Reports obliegt der Verantwortung jedes Entwicklers. Durch das SAP Backend werden selbstständig keine Berechtigungsprüfungen, beispielsweise beim Zugriff auf Tabelleninhalte, durchgeführt.
Wie Sie durch automatische Quellcodeanalyse effektiv sicherstellen können, dass alle eigenentwickelten Programme die notwendigen Sicherheitsmechanismen enthalten, möchte ich im Folgenden erläutern.
Berechtigungsprüfungen in ABAP Programmen
Die Berechtigungsprüfung wird in ABAP durch das Sprachelement AUTHORITY-CHECK implementiert, durch das überprüft wird, ob der ausführende Benutzer ein Berechtigungsobjekt mit einer festgelegten Ausprägung besitzt.
Ein beispielhafter Authority Check kann wie folgt aussehen:
AUTHORITY-CHECK OBJECT 'S_TCODE'
ID 'TCD' FIELD 'SE16N'
ID 'ACTVT' FIELD '03'.
IF sy-subrc <> 0.
MESSAGE 'Keine ausreichende Berechtigung' TYPE E.
ENDIF.
Durch diese Prüfung wird überprüft, ob der Benutzer in seinem Benutzerberechtigungspuffer (Transaktion SU56) das Berechtigungsobjekt S_TCODE mit der Ausprägung SE16N im Feld TCD besitzt (ob also der User die Transaktion SE16N aufrufen darf). Es ist bei der Prüfung unerheblich, aus welcher Rolle oder welchem Profil der Benutzer dieses Berechtigungsobjekt erhalten hat.
Dokumentation zu Berechtigungsobjekten nachschlagen
Um einen Authority Check umzusetzen, benötigt der Entwickler Informationen zu den in System vorhandenen Berechtigungsobjekten und zur Bedeutung der jeweiligen Felder und Ausprägungen. Diese können in der Regel der Dokumentation der Berechtigungsobjekte entnommen werden.
Alle im SAP System vorhandenen Berechtigungsobjekte sind in der Transaktion SU21 einsehbar. Hier kann auch auf die Dokumentation zu dem Berechtigungsobjekt zugegriffen werden und die Bedeutung der zulässigen Aktivitäten nachgelesen werden.
Implementierung von Berechtigungsprüfungen durch Quellcodeanalyse überwachen
SAP Systemverantwortliche stehen vor der Herausforderung, die korrekte Umsetzung der Zugriffskontrolle in ABAP Programmen zu überwachen. Bei Transporten neuer oder veränderter ABAP Programme steht die Frage im Raum, ob Berechtigungsprüfungen korrekt eingebaut wurden. Bei der Sicherstellung korrekter Sicherheitsprüfungen können Werkzeuge zur Quellcodeanalyse unterstützen.

Unsere Referenzen finden Sie hier.
Kontaktieren Sie mich: Telefon 0211.9462 8572-25 oder per E-Mail info@rz10.de.
In einem unverbindlichen Gespräch kann ich mit Ihnen über Ihre Ausgangslage sprechen und Ihnen Möglichkeiten aufzeigen. Selbstverständlich können wir danach auch ein unverbindliches Angebot unterbreiten.
Der XAMS ABAP Alchemist verfügt über umfangreiche Funktionen zur Analyse des ABAP Quellcodes. Der Prüfumfang kann durch Auswahl vordefinierter Prüfungen individuell festgelegt werden.
Neben dem einmaligen Scan aller eigenentwickelten ABAP Programme in Ihrem SAP System kann der ABAP Alchemist auch für eine regelmäßige Überprüfung konfiguriert werden. Die Durchführung der Prüfungen kann in den Transportprozess eingebunden werden. So kann sichergestellt werden, dass Programme mit fehlenden Berechtigungsprüfungen nicht unbemerkt in die Produktivumgebung gelangen.
Die Prüfung durch den ABAP Alchemist stellt somit eine Möglichkeit zum automatisierten Testen des Quellcodes bereit. Die Prüfung kann hierbei, wie im folgenden Screenshot zu sehen, mit verschiedenen Einstellungen konfiguriert werden: von einer Warnung des Benutzers bis hin zu einer Unterbrechung des Transportprozesses können Einstellungen getroffen werden, was im Falle einer Feststellung passieren soll.
Unsere Empfehlung: Prüfung der Z-Reports im Zusammenhang mit Berechtigungsredesign
Im Rahmen eines Berechtigungsredesigns empfehlen wir, zu Beginn des Projektes die Z-Programme auf Berechtigungsprüfungen zu überprüfen und ggf. zu ergänzen. Bei einem Berechtigungsredesign sollen die Nutzer passgenaue Berechtigungen für ihre Aufgaben erhalten. Um die benötigten Berechtigungen durch einen Berechtigungstrace zu ermitteln, ist es daher sinnvoll, die Berechtigungsprüfungen zu Projektbeginn zu überprüfen und ggf. zu ergänzen, sodass sie im Berechtigungstrace sichtbar sind.
Wenn Sie mehr über unsere standardisierte Vorgehensweise beim SAP Berechtigungsredesign erfahren möchten, sprechen Sie mich gerne jederzeit an oder lesen Sie mehr unter https://rz10.de/angebot/sap-berechtigungskonzept/
Nutzen Sie bereits automatisierte Quellcodeanalyse in Ihrem SAP System? Erzählen Sie mir gerne von Ihren Erfahrungen damit. Ich freue mich über eine Rückmeldung in den Kommentaren oder per E-Mail.