PDA

View Full Version : Apache & CGI / Userprofile



Seiten : [1] 2

S.Neinawaie
09-12-15, 20:24
Hallo

Ich möchte in Zukunft via Apache, RPG & CGI Inhalte im Web ausgeben. Allerdings bin ich mir nicht sicher wie ich auf Objektberechtigungen Rücksicht zu nehmen habe.

Standardmäßig laufen die Apache & CGI Jobs als QTMHHTTP & QTMHHTP1.
Allerdings fehlt diesen Usern natürlich die Berechtigung auf die Datenbibliothek, daher bekomme ich bei jedem Request einen Fehler (Versuch die LIBL zu setzen scheitert).

Wie handhabt Ihr so etwas?
Verwendet Ihr die APIs QSYGETPH (http://www-01.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/QSYGETPH.htm?lang=de) & QWTSETP (http://www-01.ibm.com/support/knowledgecenter/ssw_ibm_i_72/apis/QWTSETP.htm?lang=de) um mitten im Programm den Benutzer zu wechseln? Falls ja -> Es ist lt. Doku notwendig *USE (oder sogar *ALLOBJ/*SECADM) Rechte auf das *USRPRF unter dem gearbeitet werden soll zu vergeben -> Gibt es nicht eine bessere Lösung?


Herzlichen Dank im Voraus,
Sam

mk
10-12-15, 07:21
Hi,

die QTMHH-- Benutzerprofile müssen natürlich Rechte für die LIBs etc. bekommen damit die
Requests auch verarbeitet werden können.

Nachdem Du dich durch das CGI gequält hast solltest Du mal den ZendServer ausprobieren.
In Verbindung mit PHP ist zwar vieles anders, aber auch vieles einfacher.
Viele Erfolg
Michael

BenderD
10-12-15, 07:42
... die QTMHH++ Benutzer dürfen natürlich keinesfalls Berechtigung für die Libs bekommen, sie dürfen allenfalls Berechtigung für CGI Programme haben und da eigentlich auch nur für die Controllerschicht. Alles andere wird von dort aus aufgerufen und bringt genau die Rechte mit, die es braucht. Profile switch würde ich auch vermeiden wollen, adopted Authority müsste da reichen.

D*B
, der sich spaßigere Dinge vorstellen kann als CGI.

Pikachu
10-12-15, 18:51
Wie wär's mit der ServerUserID-Direktive (http://www.ibm.com/support/docview.wss?uid=nas8N1013892)?

ServerUserID BENUTZERNAME

S.Neinawaie
10-12-15, 20:20
Herzlichen Dank für eure Antworten - würde mich natürlich über weitere Erfahrungsberichte freuen.

Danke,
Sam

Fuerchau
11-12-15, 07:11
Bei Standardberechtigungen steht ja eigentlich alles auf *PUBLIC *USE. Somit kommen auch die QTM-Profile an alle Anwendungsdaten.
Mit dem "App"-User und Ausführung *OWNER gibt es keinesfalls Probleme.
Man sollte jedoch nicht auf die Idee verfallen, allen "externen" Usern der Web-Anwendung AS/400-Profile zuzuweisen. Das kann schnell in die Millionen gehen und sprengt de Rahmen.
Hier ist eine eigene User/Kennwort-Verwaltung erforderlich.

AG1965_2
11-12-15, 08:36
Erspar' Dir den RPG-CGI-Ausflug, den nahezu jeder anfangs unternimmt - php ist viel praktischer. Und von dort aus kannst du noch immer Deine RPG-Programme aufrufen.
LG Toni

BenderD
11-12-15, 09:31
Bei Standardberechtigungen steht ja eigentlich alles auf *PUBLIC *USE.

... was einen groben Schnitzer darstellt. BTW: Standard für Daten ist SQL und da steht alles auf *PUBLIC *EXCLUDE und das ist auch gut so!!!

D*B

Fuerchau
11-12-15, 10:13
Aber nur, wenn ich auch die "Collection", also Lib per CREATE SCHEMA erstellt habe.
Ansonsten zieht auch bei SQL die CRTAUT, die beim CRTLIB auf *SYSVAL und somit auf QCRTAUT und da sogar auf *CHANGE steht.
Gefährlich wird es dann, wenn man nun den Systemwert einfach auf *EXCLUDE setzt da dies sofort auf alle Libs mit *SYSVAL wirkt.
Auch wenn viele mit SQL arbeiten, wird meist mit CRTLIB erstellt.

BenderD
11-12-15, 10:21
Aber nur, wenn ich auch die "Collection", also Lib per CREATE SCHEMA erstellt habe.
Ansonsten zieht auch bei SQL die CRTAUT, die beim CRTLIB auf *SYSVAL und somit auf QCRTAUT und da sogar auf *CHANGE steht.
Gefährlich wird es dann, wenn man nun den Systemwert einfach auf *EXCLUDE setzt da dies sofort auf alle Libs mit *SYSVAL wirkt.
Auch wenn viele mit SQL arbeiten, wird meist mit CRTLIB erstellt.

... Bibliotheken mit Produktionsdaten müssen immer public exclude sein, berechtigen kann man die dann immer noch, am einfachsten über eine AUTL, die man auch noch beim CRTAUT der Lib eintragen kann.

D*B