View Full Version : Berechtigung Satzebene
Hallo *All,
gibt es eine Möglichkeit Berechtigungen auf Satzebene zu setzen?
Danke und Gruss
Michael
Nein, das ist Anwendungssache.
Die einzige Chance ist hier das Bilden von LF's/Views, die durch entsprechende Selektion die Daten vorauswählen und für die betroffenen Programme entsprechende OVR's generieren.
Das habe ich befürchtet...
Ich habe einen View angelegt und der funktioniert sehr gut, allerdings muss ich dann auch für alle bestehenden LF einen View erstellen, die auf die PF zugreifen. Oder gibt es dafür eine andere Möglichkeit?
Eine View geht nur auf die PF.
Wie greifst du denn zu ?
Mit den Views/LF's klappt es zwar ganz gut, ist aber in meinen Augen eher schlechtes Anwendungsdesign, ausser du lässt ODBC o.ä. Zugriffe zu.
Besser wäre da, das Auswahlfeld in die LF ganz vorne mit reinzunehmen und per SQL oder Native-IO zu berücksichtigen.
Ausserdem ist dann die Berechtigungssteuerung per Anwendung dynamischer.
Es gibt auch ein Produkt mit Namen 'VIEW' das diese Aufgabe ohne großen Programmieraufwand erledigt:
View
Hiermit können Sie bestimmten Benutzern den Zugriff auf besonders sensible Daten verweigern. Ohne Eingriff in die Anwendung und in die native Security der iSeries, werden Benutzern nicht zugängliche Daten maskiert angezeigt. Regeln bestimmen, ob sensible Feldinhalte nur angezeigt, oder auch verändert werden dürfen – Anwendungsübergreifend! View unterstützt logische und physische Dateien und eignet sich hervorragend für sicherheitsrelevante Bereiche wie in Banken, e-Business, Personalsoftware, etc.
Ich habe dieses Produkt schon bei einigen Banken in Luxemburg installiert - falls Fragen so nehmen Sie Kontakt über diesen Weg auf ......
Du warts jetzt aber nicht in Lichtenstein mit Deinem Tool und bist jetzt 5 Mille reicher ?
:cool:
Sorry aber dieser Beitrag erzwingt irgendwie diese Antwort ...
ODBC Verbindungen werden auch benötigt...
Soweit ich weiss kann ich keinen View mit join oder exists erstellen, der auch Updates oder Writes auf die DB machen kann. (unter V5R3M0). Oder gibt es vielleicht doch eine Möglichkeit.
Die Anwendung kann ich leider nicht ändern, da ich keinen Quellcode habe http://www.newsolutions.de/forum-systemi-as400-i5-iseries/images/smilies/frown.gif
:(
Eine View geht nur auf die PF.
Wie greifst du denn zu ?
Mit den Views/LF's klappt es zwar ganz gut, ist aber in meinen Augen eher schlechtes Anwendungsdesign, ausser du lässt ODBC o.ä. Zugriffe zu.
Besser wäre da, das Auswahlfeld in die LF ganz vorne mit reinzunehmen und per SQL oder Native-IO zu berücksichtigen.
Ausserdem ist dann die Berechtigungssteuerung per Anwendung dynamischer.
freilich, wie sieht denn die Anforderung aus?
D*B
Hallo *All,
gibt es eine Möglichkeit Berechtigungen auf Satzebene zu setzen?
Danke und Gruss
Michael
Der SQL sieht wie folgt aus:
CREATE view lib/view as
SELECT * FROM datei
where exists (select * from datei2 where satz = 'XXX' and
(substr(info,5,3) = substr(user,3,3) or
substr(info,4,4) = substr(user,3,4))
and clraci = substr(info,8,7))
freilich, wie sieht denn die Anforderung aus?
D*B
dann hast du das Prinzip doch schon.
Den where exists den könnte man noch in in einen join auflösen und die substr Arie kriegt man noch mit Datenbankdesign weg. "unechte joins" (= es werden nur Felder aus einer Datei ausgewählt) kann man unter gewissen Einschränkungen auch fortschreiben (dafür kämen auch noch Trigger in Frage. Natürlich muss man das in einem View Layer durchgängig machen (wenn man sich Ver und Tipperei sparen will, kann man sowas auch generieren) letztlich ist das immer die Frage, wieviel Aufwand man da rein stecken will/kann.
D*B
Der SQL sieht wie folgt aus:
CREATE view lib/view as
SELECT * FROM datei
where exists (select * from datei2 where satz = 'XXX' and
(substr(info,5,3) = substr(user,3,3) or
substr(info,4,4) = substr(user,3,4))
and clraci = substr(info,8,7))