Rund ums Thema Berechtigungen

Direkt zum Seiteninhalt

Rund ums Thema Berechtigungen

Veröffentlicht von SAP Corner in SAP Basis · 2 Juni 2022
Tags: Berechtigungen
Hier verschiedene über Jahre hinweg gesammelte Informationen, mehr oder weniger geordnet. Los geht's...
Welche Berechtigungen benötigt Transaktion xyz?
Das können Sie über die Transaktion SU22 herausfinden. Mit Transaktion SU22 werden einer Anwendung die Berechtigungsobjekte einer Anwendung zugeordnet und die Vorschlagswerte (für den Profilgenerator (PFCG)) verwaltet.
Berechtigungstrace:
Für den Berechtigungstrace gibt es mehrere Transaktionen:
  • ST01 -> Berechtigungsprüfung. Beachten: der Trace ist nicht systemweit sondern wirkt nur auf der Instanz, unter der der Trace gestartet wurde! Also: Anmeldung auf dem gleichen Server, auf dem die Session des zu tracenden Anwenders läuft! In den Details einer Berechtigungsprüfung im Trace (Doppelklick) findet sich auch ein Verweis auf das Programm und die Sourcecode-Zeile, in der die Berechtigungsprüfung erfolgte.
    Bei der Auswertung: keine Sternchen im Feld für die User-ID verwenden, das wirkt in der ST01 nicht wie man erwarten könnte. Eine Angabe von z.B. "ABC*" führt dazu, dass für den User "ABC*" die Trace-Daten ausgewertet werden - und nicht für alle mit "ABC" beginnenden User.
  • STAUTHTRACE: Erweiterte Version von ST01 für den Trace von Berechtigungen (ab SAP_BASIS 7.00 SP26). Ab Gültigkeit lt. SAP-Hinweis 1707841 (STAUTHTRACE: Systemweite Traceauswertung) wird auch das Starten des Traces auf Appl.-Servern unterstützt. Liefert - bei gesetzter Markierung bei "Extended Passport auswerten" - auch einige nützliche Statistikdaten, z.B. bei RFC-Aufrufen (aufrufendes System/Mandant, Batch-Job, Transaktionsname). Darstellung der Trace-Daten in einem ALV-Grid, Sprungmöglichkeit zum jeweiligen ABAP-Sourcecode.
  • STUSOBTRACE: Setzen der Filter für den Berechtigungstrace (ab SAP_BASIS 740?). Abhängiger Profilparameter: auth/authorization_trace.
  • STRFCTRACE (aus SAP-Hinweis 2080378: Analyse RFC-Kommunikation, ähnlich der Funktion im "UCON" ("Unified Connectivity", http://help.sap.com/saphelp_nw74/helpdata/de/ab/35e1c69f744d69a4fcf4ca93284e0c/content.htm))
Ausschalten von Berechtigungsprüfungen
Transaktionen AUTH_SWITCH_OBJECTS, SU24, SU25
-> durch Profilparameter auth/object_disabling_active verhinderbar (sollte in P-Systemen auf N gesetzt sein!)
Kurze Beschreibung / Abgrenzung der Transaktionen SU22, SU24, SU25 (aus der Online-Doku zu SU22 übernommen):
Mit Transaktion SU22 ordnen Sie als Entwickler einer Anwendung die Berechtigungsobjekte der Anwendung zu und bearbeiten die Berechtigungsvorschlagswerte der Berechtigungsobjekte. Die Berechtigungsobjekte und deren Vorschlagswerte kann der Berechtigungsadministrator des Kunden mit Transaktion SU25 übernehmen und mit Transaktion SU24 anpassen. Diese kundenseitig angepassten Daten verwendet der Profilgenerator (Rollenverwaltungswerkzeug, Transaktion PFCG) bei der Erstellung von Rollenberechtigungen. In der PFCG kann der Rollenadministrator des Kunden die Berechtigungswerte noch weiter nachbearbeiten, z.B. um den Buchungskreis anzugeben.
Die SU25 dient für die Initialisierung des Profilgenerators nach Upgrade bzw. Erstinstallation.
Weitere Programme in dem Umfeld: SU2X_CHECK_CONSISTENCY, SU24_AUTO_REPAIR.
Berechtigungsfelder, Ausprägungen / Wertetabellen
Transaktion SU20
Für Transport: Objektkatalogeintrag ist folgendermaßen
R3TR AUTH (Berechtigungsobjekt)
Dabei dann aber auch an verwendete Datenelemente und Domänen denken!
R3TR DTEL (Datenelement)
R3TR DOMA (Domäne)
SUIM: Suchen nach Gesamtberechtigung ('*')
Ein in den Feldwerten für Berechtigungen eingegebener * bewirkt, dass nach beliebigen Ausprägungen in dem Feld gesucht wird. Will man auf die Gesamtberechtigung abfragen, muss #* eingegeben werden (siehe SAP-Hinweise 1267608: SUIM| RSUSR030 Suche nach Gesamtberechtigung und 1259329: SUIM| Suche mit dem Suchmuster #**).
Reiter "Berechtigungen" fehlt in PFCG
-> Profilparameter auth/no_check_in_some_cases enthält nicht "Y". Siehe SAP-Hinweis 416016: Profilparameter auth/no_check_in_some_cases.
Deklaration eines Feldes als Organisationsebene (in PFCG)
SAP-Hinweise
Zusammenspiel PFCG - HR-Org.Management
-> indirekte Rollenzuordnung. Indem User einer "Planstelle" zugeordnet werden, erhalten sie dann auch die zu einer Planstelle zugeordneten Rollen.
Dokumentation in der SAP-Bibliothek dazu:
Eine Rollenzuordnung über HR-Org.Management ist u.a. am Flag "ORG_FLAG" in der Tabelle AGR_USERS erkennbar.
Voraussetzung ist u.a. ein Eintrag in Tabelle PRGN_CUST (HR_ORG_ACTIVE "YES").
Beteiligte Tabellen, Transaktionen etc.: Tabellen T77AW (WEGID = US_ACTGR), Transaktion PPOME. Liste der Besetzung von Planstellen: Transaktion S_AHR_61016503. Allgemeines Auswerteprogramm: RHSTRU00
SAP-Hinweise mit Informationen dazu:
Profile SAP_ALL und SAP_NEW
Für beide gibt es Generierungsprogramme:
RSUSR406 für SAP_ALL
REGENERATE_SAP_NEW für SAP_NEW
Mit dem Programm REGENERATE_SAP_APP kann man auch ein "SAP_APP"-Profil und/oder eine "SAP_APP-Rolle" generieren, in dem z.B. Basis- und HR-Objekte ausgeschlossen werden können. Anders als SAP_ALL und SAP_NEW existiert das Profil im Standard nicht, wenn man es über REGENERATE_SAP_APP generiert.
Rollen: Massengenerierung von Profilen
Tx. SUPC bzw. Programm SAPPROFC_NEW. Für Ausführung von SAPPROFC_NEW wird allerdings auch die Transaktionsberechtigung für SUPC benötigt (wird bei Programmstart geprüft). Wenn man die nicht hat (und auch nicht die für Ausführen der Generierung in PFCG), kann man für Generierung von Profilen einzelner Rollen auch noch auf den Funktionsbaustein SUPRN_PROFILE_BATCH ausweichen (SE37, Parameter: ACT_OBJID = Rollenname). Interessanterweise scheinen dabei keine Änderungsbelege erzeugt zu werden.
Massenlöschung von Rollen
Statusübersicht über Rollen (Profil / Profilgenerierung aktuell, Benutzer zugewiesen etc.)
Programm PRGN_STATUS_ALL
Rollen: Massenfunktion für Aufnahme in Transportauftrag
Programm PFCG_MASS_TRANSPORT
Rollen in andere Systeme verteilen
Transaktion PFCGROLEDIST
Rollenvergleich
SUIM -> Vergleiche -> Rollen (bzw. Transaktion S_BCE_68001777 bzw. Programm RSUSR050).
Rollen: Anpassen und Generieren von abgeleiteten Rollen
Programm SUPRN_REGENERATE_DEPENDENT -> geht aber nur für einzelne Mutterrollen (Name der vererbenden Rolle muss im Selektionsbildschirm angegeben werden).
Berechtigungen: Ein-/Ausschalten Transaktionsberechtigung bei Aufruf aus einer anderen Transaktion (CALL TRANSACTION...)
Transaktion SE97 / Tabelle TCDCOUPLES für Berechtigungsprüfung Transaktionsaufruf aus einer anderen Transaktion
In welchen Sammelrollen ist eine Rolle enthalten?
über SE16 -> Tabelle AGR_AGRS, Rolle in CHILD_AGR eintragen.
Welche Transaktionen hat Benutzer x im Zeitraum y - z verwendet?
ST03N -> auf "Experte" umschalten -> Appl-Server auswählen (nicht TOTAL!) -> Zeitraum auswählen -> im unteren Bereich  "Anwender- u. Abrechnungsstat." -> "Anwenderprofil" -> Doppelklick auf Benutzer x
Refresh der Benutzerpuffer (Berechtigungen)
in SU01 im Kommandofeld (egal, welches Dynpro) "RSET" eingeben
oder
Report RSUSR405 ausführen
oder
Funktionsbaustein 'SUSR_USER_BUFFER_AFTER_CHANGE' ausführen (Wert für Parameter PROFILE: 4. Siehe auch SAP-Hinweis 452904: Verlust der Berechtigung nach Profilgenerierung)
oder
Funktionsbaustein 'SUSR_RESET_ALL_USER_BUFFERS' ausführen
Auch für einen einzelnen User kann der Benutzerpuffer zurückgesetzt werden: SU56 > "Berechtigungswerte" > "Anderer Benutzer / Berechtigungsobjekt" > User angeben > "Berechtigungswerte" > "Benutzerpuffer zurücksetzen".
Problem "Überlauf des Benutzerpuffers"
In Releases < SAP_BASIS 750 gibt es eine "harte" Grenze von 312 Profilen, die ein Benutzer haben kann. Wird diese Grenze überschritten, klappt der Benutzerabgleich nicht (rote Ampeln).
Die Benutzer, bei denen so ein Überlauf vorliegt, kann man über SE16 / Tabelle USR04 herauskriegen. Im Feld PROFS stehen die zugeordneten Profile, im Feld NRPRO die Anzahl der belegten Bytes in dem Feld. Der Profilname ist 12 Zeichen lang, 2 Bytes werden noch zusätzlich für ein Änderungskennzeichen benötigt. Also: (NRPRO - 2) / 12 = Anzahl Profile. Bei Wert > 3740 liegt ein Überlauf im Benutzerpuffer vor.
SAP-Hinweise dazu:
Meldung "Keine Berechtigung zum Lesen der Datei usr/sap/trans/sapnames/USERNAME"
Ein paar ggf. nützliche Programme
PRGN_STATUS_ALL Übersicht Rollen (Profil generiert, User zugeordnet etc.)
PFCG_ADD_MINIAPP Hinzufügen einer MiniApp
PFCG_AGRS_WITH_MANUAL_S_TCODE Auflisten aller Rollen mit manueller S_TCODE Berechtigung
PFCG_COMPARE_ROLE_WITH_TEMPL Report PFCG_COMPARE_ROLE_WITH_TEMPL
PFCG_MASS_DOWNLOAD Massen-Download von Rollen
PFCG_MASS_IMPORT Massenimport von Rollen
PFCG_MASS_TRANSPORT Massentransport von Rollen
PFCG_MODAUTH Ändern von Berechtigungen einer Rolle von „Standard“ zu „Manuell“
PFCG_ORGFIELD_CREATE Profilgenerator: Neues Org.-Ebenen Feld anlegen
PFCG_ORGFIELD_DELETE Profilgenerator: Neues Org.-Ebenen Feld wieder löschen
PFCG_ORGFIELD_ROLES Rollen mit Orgebenendefinition synchronisieren
PFCG_ORGFIELD_UPGRADE Profilgenerator: Anpassung nach Upgrade für neue Org.-Ebenen Feld
PFCG_SET_ACTGROUP_TIMESTAMP Programm PFCG_SET_ACTGROUP_TIMESTAMP
PFCG_SET_PROFILE_NAMERANGE Nummernbereich für den Namensvorschlag bei Profilen setzen
PFCG_START_PFCG Programm zum Starten der PFCG
PFCG_TIME_DEPENDENCY Report zum Einplanen für Zeitabhängigkeit der Rollen
PFCG_UPDATE_ALL_ROLES Nachgenerieren aller Rollen
SUPRN_PRINT_COMPLETE_AGR Druckaufbereitung aller Daten einer Rolle
SUPRN_REGENERATE_DEPENDENT Anpassung abgeleiteter Rollen
Berechtigungen für Tabellen
Berechtigung für alle Tabellen einer Berechtigungsgruppe
Über Berechtigungsobjekt S_TABU_DIS. Die Berechtigungsprüfung für S_TABU_DIS erfolgt sowohl in den "generischen Tabellenzugrifftools" (SE16, SM30...) als auch in vielen Anwendungsprogrammen.
Berechtigung für einzelne Tabellen
Das ist steuerbar über die Berechtigungsobjekte S_TABU_DIS (Ziel: erfolglose Berechtigungsprüfung für Berechtigungsgruppe der Tabelle) und S_TABU_NAM (Ziel: erfolgreiche Berechtigungsprüfung für die Tabelle).
In den "generischen Tabellenzugriffstools (Transaktionen SE16, SE17, SM30, SM31 und SM34) und allen weiteren Anwendungen die den Funktionsbaustein VIEW_AUTHORITY_CHECK zur Berechtigungsprüfung nutzen" wird zunächst S_TABU_DIS mit der Berechtigungsgruppe der Tabelle geprüft. Schlägt diese Berechtigungsprüfung fehl, wird anschließend die Berechtigung für S_TABU_NAM mit dem Tabellennamen geprüft. Ist diese erfolgreich, ist der Zugriff auf die Tabellendaten möglich. In vielen Anwendungsprogrammen erfolgt diese Methodik der Berechtigungsprüfung aber nicht, d.h. funktioniert für einen Anwender in den Transaktion SE16, SM30, ... der Zugriff auf die Tabelle aufgrund fehlender Berechtigung für S_TABU_DIS und vorhandener Berechtigung für S_TABU_NAM, wird ihm der Zugriff in den Anwendungsprogrammen auf die gleiche Tabelle ggf. verwehrt.  
Berechtigung für einzelne Zeilen von Tabellen
Über Berechtigungsobjekt S_TABU_LIN.
In dem Zusammenhang auch noch sinnvoll: Eine Parametertransaktion für SM30 mit dem Tabellennamen, Pflege in SU24 für diese Parametertransaktion.
Sperrung eines Systems gegen den Import von Benutzerzuordnungen von Aktivitätsgruppen
Wenn Sie ein System gegen den Import von Benutzerzuordnungen von Aktivitätsgruppen grundsätzlich sperren wollen, so können Sie dies in der Customizing Tabelle PRGN_CUST angeben (Pflege mit der Transaktion SM30). Geben Sie dazu eine Zeile mit der Bezeichnung USER_REL_IMPORT und dem Wert NO ein.
Sicherheitsrichtlinien / Security Policies
AB SAP_BASIS 731. Die Sicherheitsrichtlinien lösen etliche Profilparameter bzgl. Definition von Passwortregeln, -änderungen und Anmelderestriktionen ab. In der SU01 (Reiter "Logondaten") kann man Benutzer einer Sicherheitsrichtlinie zuordnen. Die Sicherheitsrichtlinien werden in Transaktion SECPOL gepflegt.
Ist bei einem User keine Sicherheitsrichtlinie eingetragen, sind die Regeln lt. Profilparameter gültig.
Änderungen an problematischen Profilparametern (wie z.B. login/password_downwards_compatibility) können darüber eingeführt werden, ohne dass man ein Risiko bei den Systemusern eingeht, wenn diese einer Sicherheitsrichtlinie zugeordnet sind, die ältere Regeln definieren.
Hinweis: mit Einführung der Sicherheitsrichtlinien sind die Passwortregeln nun auch für Servicebenutzer gültig!
Kritische Berechtigungen / kritische Kombination von Berechtigungen
Ab Release 7.52 gibt es mit dem Report RSUSR_UP_AND_DOWNLOAD_FOR_CA die Möglichkeit, die Definition der Regelwerke in Excel vorzunehmen. (In älteren Releases kann der Report selbst angelegt werden, der ABAP Code ist hier: https://wiki.scn.sap.com/wiki/download/attachments/491918787/Z_USCRAUTH.txt zu finden). Mit diesem Report können die bestehenden Regeln aus dem System im passenden Format nach Excel exportiert und dort angepasst / ergänzt werden. Anschließend kann das Excel wieder hochgeladen werden. Weitere Infos dazu gibt es im SAP-Hinweis 2785076: SUIM| Neue Funktionalitätten in RSUSR008_009_NEW.
Tabelleninhalt eines anderen Mandanten einsehen
  • über Transaktion ST04, dort findet sich ein SQL-Editor
  • über Programm ADBC_QUERY. Nur den Tabellennamen eingeben (DB-Verbindungsname und Datenbankschema kann leer bleiben), nachfolgend ggf. Spalten auswählen, anschließend bekommt man die Daten aller Mandanten im System.
Änderungsbelege zu Usern
Tabellen:
USRSTAMP Zeitstempel für alle Änderungen am Benutzer
USH02 Änderungshistorie f. Logon-Daten und Security Policy
USH04 Änderungshistorie Berechtigungen
CDHDR: OBJECTID = Username, und wie üblich haben die zugehörigen Sätze in Tabelle CDPOS die gleiche CHANGENR.






Es gibt noch keine Rezension.
0
0
0
0
0
Zurück zum Seiteninhalt