was ist an Objektberechtigung hier komplizuert? Die Production Libs werden dicht gemacht und man stellt in einer extra Lib ein separates View Layewr bereit, mit den Daten, die für indiiduelle Auswertungen bereit stehen. Einfach, sicher und wesentlich Leistungsstärker als jeder Exit Mechanismus (geht bis auf Satzlevel runter). Die Krux mit den Exitprogrammen ist doch, dass bei Wechsle zu einer Client Server Lösung das ganze Kartenhaus zusammenbricht.

D*B

Zitat Zitat von Fuerchau Beitrag anzeigen
Kompliziert nicht, aber bei SQL (ODBC) bekommt man den originären SQL-String.
Nun muss man schon einen SQL-Interpreter stricken um bei allen möglichen SQL-Befehlen die verwendeten Dateien/Tabellen zu eruieren.

Ob Select, Insert, Update oder Delete erlaubt sind, ob Administrationsbefehle, Call's oder Create's möglich sind, u.v.m.

Allein die Select-Varianten sind schon sehr vielzählig.
Ausserdem kann man "einfache" Prüfungen durch Kombinationen von
CALL QCMDEXC "OVRDBF ..."
Select * from AnyTable
oder CREATE ALIAS/CREATE VIEW mit anschliessendem Select unterlaufen.

PCSACC/400 (ohne hier Werbung machen zu wollen) deckt alle diese Varianten zur korrekten Verhinderung von unerlaubten Zugriffen ab.

Standard-Objekt-Berechtigungen (App-User, Owner-PGM'e) werden immer noch zu selten verwendet und decken eben nicht alle Möglichkeiten ab.