Examples of setting up program access to data sets
- You have a program named PROG1 in library
'APP.LOADLIB'that users execute in batch, and when using that program you want the users to have UPDATE access to data set'ABC.DATA'. Otherwise, users should have READ access to the data set. Only users in group GROUPA should have access to PROG1 and'ABC.DATA'. You should run in BASIC program security mode. Issue the following commands.RDEFINE FACILITY IRR.PGMSECURITY APPLDATA('BASIC')ADDSD 'APP.LOADLIB' UACC(READ)RDEFINE PROGRAM PROG1 ADDMEM('APP.LOADLIB'//NOPADCHK) UACC(NONE)PERMIT PROG1 CLASS(PROGRAM) ID(GROUPA) ACCESS(READ)ADDSD 'ABC.DATA' UACC(NONE)PERMIT 'ABC.DATA' ID(GROUPA) ACCESS(READ)PERMIT 'ABC.DATA' ID(*) ACCESS(UPDATE) WHEN(PROGRAM(PROG1))SETR WHEN(PROGRAM)However, if you have previously issued SETR WHEN(PROGRAM):SETR WHEN(PROGRAM) REFRESH
- You have a program named PROG2 in library
'APP.LOADLIB'that users execute in batch, and when using that program you want the users to have UPDATE access to data set'ABC.DATA'. Otherwise, users should have READ access to the data set. Only users in group GROUPA should have access to PROG2 and'ABC.DATA'. You should run in ENHANCED program security mode. Issue the following commands:ADDSD 'APP.LOADLIB' UACC(READ)RDEFINE PROGRAM PROG2 ADDMEM('APP.LOADLIB'//NOPADCHK) UACC(NONE) APPLDATA('MAIN')PERMIT PROG2 CLASS(PROGRAM) ID(GROUPA) ACCESS(READ)ADDSD 'ABC.DATA' UACC(NONE)PERMIT 'ABC.DATA' ID(GROUPA) ACCESS(READ)PERMIT 'ABC.DATA' ID(*) ACCESS(UPDATE) WHEN(PROGRAM(PROG2))RDEFINE FACILITY IRR.PGMSECURITY APPLDATA('ENHANCED')SETR WHEN(PROGRAM)However, if you have previously issued SETR WHEN(PROGRAM):SETR WHEN(PROGRAM) REFRESH