|
[…] We have here a (admittedly primitive) small home grown
authorization system where users are authorized to certain PGMs
(and to PGM's features) in certain Libraries.
Like: User Bob is authorized to LIB1/PGM_A
this system is implemented by having each PGM call (in *INZSR) a
certain authority checking program (passing it's *PSSR's User, PGM
and Library) that returns a pass/fail indication
This works fine until some programmer compiles a PGM while it is in
use by some user.
The compile replaces the PGM and moves the original PGM obj to
QRPLOBJ
The scenario is as follows:
User has authority to LIB1/PGM_A
PGM_B calls PGM_A
PGM_A checks authority of user to LIB1/PGM_A – User passes the check.
LIB1/PGM_A is compiled. PGM_A in LIB1 is replaced, original PGM_A is
moved to QRPLOBJ
PGM_A returns to caller (PGM_B)
PGM_B (re)calls PGM_A
PGM_A in QRPLOBJ gets called.
PGM_A checks authority of user to QRPLOBJ/PGM_A – User fails the check.
Any idea how to circumvent the issue?
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.