Show TOC Anfang des Inhaltsbereichs

Hintergrunddokumentation Berechtigungsprüfungen  Dokument im Navigationsbaum lokalisieren

Um zu gewährleisten, dass ein Benutzer über die entsprechenden Berechtigungen verfügt, wenn er eine Aktion ausführt, unterliegen Benutzer Berechtigungsprüfungen.

Folgende Aktionen unterliegen Berechtigungsprüfungen, die noch vor dem Start eines Programms oder der Tabellenpflege stattfinden und von SAP-Anwendungen nicht umgangen werden können:

·        Start von SAP-Transaktionen (Berechtigungsobjekt S_TCODE)

·        Start von Reports (Berechtigungsobjekt S_PROGRAM)

·        Aufruf von RFC-Funktionsbausteinen (Berechtigungsobjekt S_RFC)

·        Tabellenpflege mit generischen Werkzeugen (S_TABU_DIS)

Prüfung auf Programmebene mit AUTHORITY-CHECK

Mit der im Quelltext des Programms eingefügten ABAP-Anweisung AUTHORITY-CHECK prüfen die Anwendungen, ob der Benutzer die entsprechenden Berechtigungen besitzt und ob diese Berechtigungen geeignet ausgeprägt sind, d. h., ob der Benutzeradministrator die vom Programmierer geforderten Werte für die Felder vergeben hat. Auf diese Weise können Sie auch Transaktionen schützen, die indirekt von anderen Programmen aufgerufen werden.

AUTHORITY-CHECK sucht in dem im Benutzerstammsatz angegebenen Profilen nach Berechtigungen für das im AUTHORITY-CHECK angegebene Berechtigungsobjekt. Wenn eine der gefundenen Berechtigungen mit den vorgegebenen Werten übereinstimmt, ist die Prüfung erfolgreich.

Start von SAP-Transaktionen

Wenn ein Benutzer eine Transaktion startet, führt das System folgende Prüfungen durch:

·        In Tabelle TSTC wird geprüft, ob der Transaktionscode gültig ist und ob der Systemadministrator die Transaktion gesperrt hat.

·        Es wird geprüft, ob der Benutzer die Berechtigung hat, die Transaktion zu starten.

Das SAP-System führt die Berechtigungsprüfungen beim Start jeder über das Menü oder die Befehlszeile aufgerufenen Transaktion durch. Indirekt aufgerufene Transaktionen sind in dieser Berechtigungsprüfung nicht enthalten. Für komplexere Transaktionen, die weitere Transaktionen aufrufen, gibt es zusätzliche Berechtigungsprüfungen.

¡        Das Berechtigungsobjekt S_TCODE (Transaktionsstart) enthält das Feld TCD (Transaktionscode). Der Benutzer muss eine Berechtigung haben, die einen Wert für den ausgewählten Transaktionscode enthält.

¡        Ist über Transaktion SE93 durch ein Berechtigungsobjekt eine zusätzliche Berechtigung für die zu startende Transaktion eingetragen, benötigt der Benutzer auch dieses entsprechend ausgeprägte Berechtigungsobjekt (TSTA, Tabelle TSTCA).

Hinweis

Wenn Sie in Transaktion SE93 eine Transaktion erstellen, haben Sie die Möglichkeit, dieser Transaktion eine zusätzliche Berechtigung zuzuweisen. Dies ist von Nutzen, wenn Sie eine Transaktion mit einer einzigen Berechtigung schützen können. Ist dies nicht der Fall, sollten Sie andere Methoden zum Schutz der Transaktion erwägen (beispielsweise AUTHORITY-CHECK auf Programmebene).

·        Es wird geprüft, ob dem Transaktionscode ein Berechtigungsobjekt zugeordnet ist. Ist dies der Fall, wird geprüft, ob der Benutzer eine Berechtigung für dieses Berechtigungsobjekt besitzt.

In folgenden Fällen findet diese Prüfung nicht statt:

Sie haben (mit Transaktion SU24) die Prüfung der Berechtigungsobjekte zur Trans­aktion über Prüfkennzeichen ausgeschaltet, d. h. Sie haben so ein über Transaktion SE93 eingetragenes Berechtigungs­objekt wieder aufgehoben. Bei Objekten der Bereiche SAP NetWeaver und HR können Sie die Prüfung nicht ausschalten.

Dies kann sinnvoll sein, da beim Ausführen von Transaktionen häufig eine größere Zahl von Berechtigungsobjekten geprüft wird, da im Hintergrund andere Arbeitsgebiete aufgerufen werden. Für eine erfolgreiche Prüfung müssen entsprechende Berechtigungen vorhanden sein. Dadurch erhält mancher Anwender mehr Berechtigungen als unmittelbar nötig. Außerdem bedeutet dies einen erhöhten Pflegeaufwand. Daher können Sie solche Berechtigungsprüfungen über Transaktion SU24 gezielt ausschalten.

¡        Sie haben mit Transaktion SU24 oder Transaktion SU25 die Prüfungen der Berechtigungs­objekte global für alle Trans­aktionen ausgeschaltet.

¡        Damit die mit den Transaktionen SU24 und SU25 vorgenommenen Einträge wirksam werden, müssen Sie den Profilparameter AUTH/NO_CHECK_IN_SOME_CASES (über Transaktion RZ10)  auf  „Y“ setzen.

Damit der Benutzer die Transaktion starten kann, müssen alle obigen Prüfungen gelingen. Andernfalls wird die Transaktion nicht gestartet und das System zeigt eine entsprechende Meldung an.

Start von Reportklassen

Sie können weitere Berechtigungsprüfungen durch Zuweisung von Reports zu Berechtigungsklassen (über Report RSCSAUTH) durchführen. Sie können z. B. alle PA*-Reports einer zu PA gehörigen Berechtigungsklasse (wie PAxxx) zuordnen. Will ein Benutzer einen PA-Report ausführen, benötigt er die entsprechende Berechtigung, um Reports in dieser Klasse auszuführen.

Wir liefern keine vordefinierten Reportklassen aus. Sie müssen selbst bestimmten, welche Reports Sie auf diese Weise schützen. Sie können die Berechtigungsklassen für Reports auch mit den Pflegefunktionen für Berichtsbäume eingeben. Diese Methode bietet einen hierarchischen Ansatz für die Zuweisung von Berechtigungen für Reports. Sie können z. B. eine Berechtigungsklasse einem Berichtsknoten zuweisen, wodurch alle Reports an diesem Knoten automatisch zu dieser Klasse gehören. Sie haben damit eine transparentere Übersicht darüber, welche Berechtigungsklassen den verschiedenen Reports zugeordnet sind.

Hinweis

Sie müssen Folgendes beachten:

·         Nachdem Sie Reports zu Berechtigungsklassen zugewiesen oder die Zuweisungen geändert haben, müssen Sie u. U. Objekte in Ihrem Berechtigungskonzept anpassen (z. B. Rollen (Aktivitätsgruppen), Profile oder Benutzerstammsätze).

·         Es gibt bestimmte Systemreports, die Sie keiner Berechtigungsklasse zuordnen können. Dazu zählen:

·         RSRZLLG0

·         STARTMEN (ab Release 4.0)

·         Reports, die bei der Anmeldung über SUBMIT in einem Customer-Exit aufgerufen werden (z. B. SUSR0001, ZXUSRU01).

·         Berechtigungszuweisungen für Reports werden bei einem Upgrade überschrieben. Nach einem Upgrade müssen Sie daher Ihre kundenspezifischen Reportberechtigungen wiederherstellen.

Aufruf von RFC-Funktionsbausteinen

Beim Aufruf von RFC-Funktionsbausteinen von einem RFC-Client-Programm oder einem anderen System aus, wird im gerufenen System eine Berechtigungsprüfung gegen das Berechtigungsobjekt S_RFC ausgeführt. Dabei wird gegen den Namen der Funktionsgruppe, zu der der Funktionsbaustein gehört, geprüft. Diese Prüfung kann über den Parameter auth/rfc_authority_check deaktiviert werden.

Prüfung über Zuweisung von Berechtigungsgruppen zu Tabellen

Sie können Berechtigungsgruppen auch zu Tabellen zuweisen, um zu verhindern, dass Benutzer über allgemeine Zugriffswerkzeuge (z. B. Transaktion SE16) auf Tabellen zugreifen. Ein Benutzer benötigt nicht nur die Berechtigung, um das Werkzeug auszuführen, sondern er muss auch die Berechtigung haben, mit den entsprechenden Gruppenzuweisungen auf die Tabellen zugreifen zu dürfen. Für diesen Fall liefern wir Tabellen mit vordefinierten Zuweisungen von Berechtigungsgruppen aus. Die Zuweisungen sind in der Tabelle TDDAT definiert; das geprüfte Berechtigungsobjekt ist S_TABU_DIS.

Beispiel

Sie können einer Tabelle die Berechtigungsgruppe Z000 zuweisen. (Verwenden Sie für Tabelle TDDAT Transaktion SM30.) Ein Benutzer, der auf diese Tabelle zugreifen will, muss in seinem Profil das Berechtigungsobjekt S_TABU_DIS mit dem Wert Z000 in Feld DICBERCLS (Berechtigungsgruppe für ABAP-Dictionary-Objekte) haben.

 

Siehe auch:

·        SAP-Hinweise 7642, 20534, 23342, 33154, 67766

·        Dokumentation zu RSCSAUTH

 

Ende des Inhaltsbereichs