Preparing to run CSQ4IVPX

Before you run CSQ4IVPX:

  1. The sample JCL, CSQ4IVPX, required to run the installation verification program is in library thlqual.SCSQPROC.

    Customize the CSQ4IVPX JCL with the high-level qualifier for the WebSphere MQ libraries, the national language you want to use, the four-character queue manager name, and the destination for the job output.

  2. Update RACF to allow CSQ4IVPX to access its resources if WebSphere MQ security is active. To run CSQ4IVPX when WebSphere MQ security is enabled, we need a RACF user ID with authority to access the objects. For details of defining resources to RACF, see Set up security. The user ID that runs the IVP must have the following access authority:
    Authority Profile Class
    CONTROL ssid.START.CHINIT and ssid.STOP.CHINIT MQCMDS
    UPDATE ssid.SYSTEM.COMMAND.INPUT MQQUEUE
    UPDATE ssid.SYSTEM.CSQUTIL.* MQQUEUE
    READ ssid.BATCH MQCONN
    READ ssid.DISPLAY.CHINIT MQCMDS

    These requirements assume that the connection security profile ssid.CHIN has been defined (as shown in Connection security profiles for the channel initiator), and that all WebSphere MQ security is active. The RACF commands to do this are shown in Figure 7. This example assumes that:

    • The queue manager name is CSQ1

    • The user ID of the person running sample CSQ4IVPX is TS101

    • The channel initiator address space is running under the user ID CSQ1MSTR

  3. Update RACF to allow the channel initiator address space the following access authority:
    Authority Profile Class
    READ ssid.CHIN MQCONN
    UPDATE ssid.SYSTEM.COMMAND.INPUT MQQUEUE
    UPDATE ssid.SYSTEM.CHANNEL.INITQ MQQUEUE
    UPDATE ssid.SYSTEM.CHANNEL.SYNCQ MQQUEUE
    ALTER ssid.SYSTEM.CLUSTER.COMMAND.QUEUE MQQUEUE
    UPDATE ssid.SYSTEM.CLUSTER.TRANSMIT.QUEUE MQQUEUE
    ALTER ssid.SYSTEM.CLUSTER.REPOSITORY.QUEUE MQQUEUE
    CONTROL ssid.CONTEXT.** MQADMIN

    The RACF commands to do this are also shown in Figure 7.

Figure 7. RACF commands for CSQ4IVPX

RDEFINE MQCMDS CSQ1.DISPLAY.DQM
PERMIT CSQ1.DISPLAY.DQM CLASS(MQCMDS) ID(TS101) ACCESS(READ)
 
RDEFINE MQCMDS CSQ1.START.CHINIT
PERMIT CSQ1.START.CHINIT CLASS(MQCMDS) ID(TS101) ACCESS(CONTROL)
 
RDEFINE MQCMDS CSQ1.STOP.CHINIT
PERMIT CSQ1.STOP.CHINIT CLASS(MQCMDS) ID(TS101) ACCESS(CONTROL)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.COMMAND.INPUT
PERMIT CSQ1.SYSTEM.COMMAND.INPUT CLASS(MQQUEUE) ID(TS101,CSQ1MSTR) ACCESS(UPDATE)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CSQUTIL.*
PERMIT CSQ1.SYSTEM.CSQUTIL.* CLASS(MQQUEUE) ID(TS101) ACCESS(UPDATE)
 
RDEFINE MQCONN CSQ1.BATCH
PERMIT CSQ1.BATCH CLASS(MQCONN) ID(TS101) ACCESS(READ)
 
RDEFINE MQCONN CSQ1.CHIN
PERMIT CSQ1.CHIN CLASS(MQCONN) ID(CSQ1MSTR) ACCESS(READ)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CHANNEL.SYNCQ
PERMIT CSQ1.SYSTEM.CHANNEL.SYNCQ CLASS(MQQUEUE) ID(CSQ1MSTR) ACCESS(UPDATE)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CLUSTER.COMMAND.QUEUE
PERMIT CSQ1.SYSTEM.CLUSTER.COMMAND.QUEUE CLASS(MQQUEUE) ID(CSQ1MSTR) ACCESS(ALTER)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CLUSTER.TRANSMIT.QUEUE
PERMIT CSQ1.SYSTEM.CLUSTER.TRANSMIT.QUEUE CLASS(MQQUEUE) ID(CSQ1MSTR) ACCESS(UPDATE)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CLUSTER.REPOSITORY.QUEUE
PERMIT CSQ1.SYSTEM.CLUSTER.REPOSITORY.QUEUE CLASS(MQQUEUE) ID(CSQ1MSTR) ACCESS(ALTER)
 
RDEFINE MQQUEUE CSQ1.SYSTEM.CHANNEL.INITQ
PERMIT CSQ1.SYSTEM.CHANNEL.INITQ CLASS(MQQUEUE) ID(CSQ1MSTR) ACCESS(UPDATE)
 
RDEFINE MQADMIN CSQ1.CONTEXT.**
PERMIT CSQ1.CONTEXT.** CLASS(MQADMIN) ID(CSQ1MSTR) ACCESS(CONTROL)