On 2/7/19 5:57 AM, Elardus Engelbrecht wrote:
> Steff Gladstone wrote:
>
> Please consider subscribing to RACF-L at 
> http://listserv.uga.edu/archives/racf-l.html
>
>
>> We have an TSO application for end-users that allows them to update certain 
>> VSAM and PDS files.  In order for them to update these files we of course 
>> have to give their users update-authorization under RACF for those files.
> Correct, I am assuming you're refering to VSAM and PDS datasets.
>
>
>> We want to limit their ability to update the files only via the particular 
>> TSO application (or via a particular I/O routine used by the application) 
>> and not via any other application program or IBM utility (e.g., IEBCOPY, 
>> ISPF on-line edit or utilities, etc.).
> I don't think it is possible, but if the application is a program (load 
> module) which is CALLed in TSO, then it should be possible. See below.
>
> I don't think you can protect I/O routines unless you front-end a SVC routine 
> with a ROY exit which is not recommended.
>
> For REXX programs, I don't think it is possible to protect it via RACF, 
> unless of course the dataset where it is residing is protected properly.


It is possible with REXX programs, provided you have a product (like
REXXTools/MVS) that allows you to convert REXX into secure program load
modules.  

Note that program-controlled access to datasets can be tricky to
maintain:   that all programs in all datasets from which the address
space could possibly load a module should be covered by a PROGRAM
profile, even if UACC allows everyone to access the load modules, or the
program-controlled access environment will be lost and
program-controlled dataset access will not be honored.   It helps for
problem resolution if apps that depend on program-controlled access to
datasets can check for loss of program-controlled environment and give
an explicit error message if that is the problem, rather than just
terminating on a RACF insufficient access open failure.  Access failure
from a previously working app is invariably the side effect of someone
changing some totally unrelated data sets and omitting required updates
to relevant PROGRAM profiles.
    Joel Ewing


>
>> How can we define the RACF authorizations in such a way as to limit the 
>> end-users'  update capabilities to the application (or to a particular I/O 
>> routine) alone?  
> From Knowledge Centre 
>
> (at 
> https://www.ibm.com/support/knowledgecenter/en/SSLTBW_2.3.0/com.ibm.zos.v2r3.icha400/permit.htm#permit)
>  
>
> ... you can do that PErmit for Datasets for conditional access via programs 
> (load modules):
>
> PERMIT 'XXX.YYY' ID(SMITH) ACCESS(READ) WHEN(PROGRAM(ABC))
>
> or if you want to limit it for a specific LPAR, this:
>
> PERMIT 'XXX.YYY' ID(SMITH) ACCESS(READ) WHEN(SYSID(ABC))
>
>
> Alternative: You can limit a program to be used on a specific LPAR, like this 
> COBOL example:
>
> permit IGY* class(PROGRAM)  id(?) access(READ) when(SYSID(????))
>
>
>> Would the same (or similar) definitions work for a site using Top Secret 
>> instead of RACF?
> I believe they can also do that, however, I don't know wha the command(s) are 
> for that.
>
> HTH!
>
> Groete / Greetings
> Elardus Engelbrecht


-- 
Joel C. Ewing

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to lists...@listserv.ua.edu with the message: INFO IBM-MAIN

Reply via email to