Berechtigungsabfragen selektieren

Getting started ... Alles für einen gelungenen Start.
15 Beiträge • Seite 1 von 1
15 Beiträge Seite 1 von 1

Berechtigungsabfragen selektieren

Beitrag von Bright4.5 (Specialist / 265 / 21 / 1 ) »
Hallo!

ich wäre gerade daran eine Auswertung zu erstellen, bei denen ich alle Programme und Pakete selektieren möchte, bei denen eine Berechtigungsprüfung auf den User erfolgt. Klar kann ich mir diese mit dem Code_Scanner anzeigen lassen. Dann müsste ich allerdings alle mühselig per Copy-Paste herauskopieren. Weiß jemand eine bessere Alternative wie man alle Programme, Pakete sowie Funktiionsbausteine herausselektieren kann bei denen eine Berechtigungsprüfung auf den User erfoglt?

Vielen Dank im Voraus.

gesponsert
Stellenangebote auf ABAPforum.com schalten
kostenfrei für Ausbildungsberufe und Werksstudenten


Re: Berechtigungsabfragen selektieren

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
Code-Scanner = Code Inspector?
Falls ja: Da gibt es doch einen Button, mit dem man auch eine Listausgabe bekommt statt der Baumanzeige.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Berechtigungsabfragen selektieren

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
So ein Programm ist auch schnell selbst geschrieben:
https://www.tricktresor.de/blog/unterpr ... ermitteln/

Evtl. reicht auch schon die Transaktion CODE_SCANNER oder Programm RPR_ABAP_SOURCE_SCAN.
Mit Parameter "Fundstelle -/+ Zeichen" bekommt man auch schnell einen Überblick, ob UNAME verwendet wird.

/edit: habe gerade noch mal genau gelesen. So ähnlich scheinst du das ja schon zu machen...

/edit2: Vielleicht kann man für RPR_ABAP_SOURCE_SCAN einen schönen Regex anwenden, der nur Code findet mit AUTHORITY-CHECK gefolgt von "USER" oder "UNAME" ...
Zuletzt geändert von ewx am 05.02.2019 11:28, insgesamt 1-mal geändert.

Re: Berechtigungsabfragen selektieren

Beitrag von zzcpak (Expert / 673 / 5 / 67 ) »
ich vermute mal, er meint mit Code-Scanner den Report RS_ABAP_SOURCE_SCAN?

Alternativ Transaktion SU21, das betreffende Berchtigungsobjekt auswählen
Doppelklick auf das Objekt
Verwendungsnachweis - ABAP-Workbench

Re: Berechtigungsabfragen selektieren

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
ich wäre gerade daran eine Auswertung zu erstellen, bei denen ich alle Programme und Pakete selektieren möchte, bei denen eine Berechtigungsprüfung auf den User erfolgt. Klar kann ich mir diese mit dem Code_Scanner anzeigen lassen.
Wie genau planst Du das eigentlich zu machen? Volltextsuche durch sämtlichen Quellcode nach dem Begriff AUTHORITY-CHECK?

Re: Berechtigungsabfragen selektieren

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
DeathAndPain hat geschrieben:Wie genau planst Du das eigentlich zu machen? Volltextsuche durch sämtlichen Quellcode nach dem Begriff AUTHORITY-CHECK?
Ich fürchte, dass eine Volltextsuche nach

Code: Alles auswählen.

SY-UNAME = '...' 
SY-UNAME in ...
gemeint ist.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Berechtigungsabfragen selektieren

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
black_adept hat geschrieben:Ich fürchte, dass eine Volltextsuche nach

Code: Alles auswählen.

SY-UNAME = '...' 
SY-UNAME in ...
gemeint ist.
Da magst du Recht haben.
ein AUTHORITY-CHECK mit dem Parameter USER ist in den meisten Fällen einigermaßen sinnlos... :D


Re: Berechtigungsabfragen selektieren

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Da SY-UNAME im Debugger überschrieben werden kann, sollte eh CL_ABAP_SYST=>GET_USER_NAME verwendet werden.

Folgende Benutzer bedankten sich beim Autor ewx für den Beitrag:
abuma


Re: Berechtigungsabfragen selektieren

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Warum? Wer den SY-UNAME im Debugger überschreibt, hat Debug-mit-Replace-Rechte. Gegen so einen User ist eh kein Kraut gewachsen. Anders ausgedrückt: Diese Berechtigung sollte (außer einem vollgetracten, selten genutzten SAP_ALL-Notfall-User) ohnehin niemand im Produktivsystem haben.

In allen anderen Systemen ist es egal - oder zu Testzwecken sogar sinnvoll - wenn das Programm mit einem anderen SY-UNAME weitermacht.

Re: Berechtigungsabfragen selektieren

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
DeathAndPain hat geschrieben:Warum? Wer den SY-UNAME im Debugger überschreibt, hat Debug-mit-Replace-Rechte. Gegen so einen User ist eh kein Kraut gewachsen.
In dem Fall schon. Das Kraut heißt dann CL_ABAP_SYST=>GET_USER_NAME.
Wenn's eine IF-Abfrage ist, kann ich ggfs. drüber oder rein springen. ok.
Aber wenn du SY-UNAME einer Funktion mitgibst und dafür CL_ABAP_SYST=>GET_USER_NAME verwendest, hast du m.W. keine Chance mehr das umzuschießen.

Re: Berechtigungsabfragen selektieren

Beitrag von DeathAndPain (Top Expert / 1795 / 213 / 396 ) »
Was ich meinte, ist, dass Du Dir einen böswilligen (oder inkompetenten) User mit Debug&Replace-Rechten im Produktivsystem so oder so nicht leisten kannst. Der kann auch so reichlich Schaden anrichten, ohne dass sein Username in den Folgen erkennbar ist (solange man die Replace-Logs nicht auswertet). Wenn Du so einen im System hast, dann ist das Dein Problem, nicht der SY-UNAME in Deinem Programm. An letzterem was zu machen wäre nur Doktern an den Symptomen. Jemand, der im Produktivsystem Debug&Replace hat, darf es gar nicht geben, und wenn es ihn doch gibt, muss er bedingungslos vertrauenswürdig sein.

Re: Berechtigungsabfragen selektieren

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
ewx hat geschrieben:Wenn's eine IF-Abfrage ist, kann ich ggfs. drüber oder rein springen. ok.
Aber wenn du SY-UNAME einer Funktion mitgibst und dafür CL_ABAP_SYST=>GET_USER_NAME verwendest, hast du m.W. keine Chance mehr das umzuschießen.
Wie häufig hast du letztens SY-UNAME oder das Ersatzkonstrukt in Schnittstellenparametern gesehen?
Ansonsten muss ich hier D&P völlig zustimmen. Das Problem ist eigentlich nicht das "SY-UNAME" sondern die zu großzügig vergebenen Debugberechtigungen.
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Re: Berechtigungsabfragen selektieren

Beitrag von ewx (Top Expert / 4784 / 294 / 628 ) »
Das eine tun heißt ja nicht, das andere lassen...
Und nur, weil es niemand kennt oder noch niemand benutzt hat, heißt es ja nicht, dass es nicht sinnvoll wäre.

Re: Berechtigungsabfragen selektieren

Beitrag von black_adept (Top Expert / 3943 / 105 / 886 ) »
Mal abgesehen von CL_ABAP_SYST=>GET_USER_NAME - hat schon mal jemand die auch dort angesiedelte Methode CL_ABAP_SYST=>GET_TRANSACTION_CODE aufgerufen und geprüft, ob diese sich so verhält wie in der Doku angegeben? Auf einem 7.01 - SP18 -System zumindest nicht.
Und wenn schon diese Methode nicht funktioniert - wie sicher kann ich mir dann mit dem GET_USER_NAMEsein?
live long and prosper
Stefan Schmöcker

email: stefan@schmoecker.de

Seite 1 von 1

Vergleichbare Themen

2
Antw.
1747
Views
Kundenhierachie selektieren
von nikibert » 08.07.2008 08:41 • Verfasst in Sales and Distribution
4
Antw.
5058
Views
Materialpreise selektieren
von MasterSAP » 02.06.2008 15:06 • Verfasst in ABAP® für Anfänger
4
Antw.
210
Views
Nur offene Belege selektieren (FI)
von Bright4.5 » 02.02.2024 11:03 • Verfasst in ABAP® für Anfänger
8
Antw.
3591
Views
Festen Text mit selektieren
von Murdock » 05.03.2012 11:56 • Verfasst in ABAP® für Anfänger
5
Antw.
3305
Views
Große Datenmengen selektieren
von IHe » 02.12.2016 09:35 • Verfasst in ABAP® Core

Newsletter Anmeldung

Keine Beiträge verpassen! Wöchentlich versenden wir lesenwerte Beiträge aus unserer Community.
Die letzte Ausgabe findest du hier.
Details zum Versandverfahren und zu Ihren Widerrufsmöglichkeiten findest du in unserer Datenschutzerklärung.