Re: CICS Adapter Userid Question
Thanks for all the information. You guys have headed me in the right direction, so I know what to do. Gary === Gary Klos Online Systems - PSC United States Steel Corporation 412-433-1225 Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Re: CICS Adapter Userid Question
Return Receipt Your Re: CICS Adapter Userid Question document : was Ernest Roberts/171/DCAG/DCX received by: at: 02/20/2003 04:26:14 PM Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Re: CICS Adapter Userid Question
Architecturally, a triggered program needs to process a queue, not a message. To transition to processing just one message you need a Service Initiation Layer. The SIL can perform numerous functions, including establishing transaction boundries and effecting message-level security. The CICS Bridge is an exemplary example of an SIL--you may want to model your application after it. Said another way, triggering does not start a transaction for each message--it just starts one or more transactions to process the queue. That is true of the bridge monitor, as well. The bridge monitor then starts per-message transactions. And that's what your SIL program should also do. When starting per-message transactions, you have the option to supply whatever userid you like. You do not need to give the CKTI userid access to all transactions that the SIL is going to start, but you do need to give it surrogate authority for the userid's you want it to engage. A custom trigger monitor, as one person suggested, will not solve this problem as there is no relationship between a trigger message and the application message that caused it. A trigger monitor's duty is to process the INITQ and it has no idea what application message caused a given trigger. To know that, you need to monitor the application queue. That's what an SIL, like the bridge monitor, does. BTW, I said above that the SIL starts per-message transactions. Of course, that's a simplification. In determining transaction boundries, the SIL can also start one transaction for a series of related messages. That's up to how you design the SIL. The bridge monitor uses MQCI_NEW_SESSION as a signal for the start of a new transaction. > -Original Message- > From: Gary P. Klos [SMTP:[EMAIL PROTECTED]] > Sent: Thursday, February 20, 2003 8:41 AM > To: [EMAIL PROTECTED] > Subject: CICS Adapter Userid Question > > I guess I'm just looking for some clarification here. When I use the CICS > Adapter and place a message on a queue which is triggered on in cics. Now > CKTI starts the transaction I specified in the "Process" definition. > However it starts the transaction with the userid that started the CKTI > transaction. That is well and good except for the fact if I want to start > various transactions for various applications, I have to give the userid > which started CKTI access to all the transactions that CICS is going to > start. Is this correct? So if I have 15 application transactions to run, > the same CKTI starting userid has to have access to all of them. Why isn't > the Useridentifier of the Mqseries message just passed in, and then CICS > will use that userid to start the transaction. You can set the CICS Bridge > up this way, but why not the adapter? Am I missing something or is there > an alternative way to do this? > > Thanks, > > Gary > > === > Gary Klos > Online Systems - PSC > United States Steel Corporation > 412-433-1225 > > Instructions for managing your mailing list subscription are provided in > the Listserv General Users Guide available at http://www.lsoft.com > Archive: http://vm.akh-wien.ac.at/MQSeries.archive Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Re: CICS Adapter Userid Question
I believe you are correct. Have you seen the new support pac MA1J yet? It provides source for a CICS trigger monitor program. Perhaps you could use this and modify it to add an appropriate userid on the exec cics start command. If that doesn't work, you could have CKTI trigger a front-end transaction that you could write which issues a start for the real application transactions with appropriate userids. -Original Message- From: Gary P. Klos [mailto:[EMAIL PROTECTED]] Sent: Thursday, February 20, 2003 10:41 AM To: [EMAIL PROTECTED] Subject: CICS Adapter Userid Question I guess I'm just looking for some clarification here. When I use the CICS Adapter and place a message on a queue which is triggered on in cics. Now CKTI starts the transaction I specified in the "Process" definition. However it starts the transaction with the userid that started the CKTI transaction. That is well and good except for the fact if I want to start various transactions for various applications, I have to give the userid which started CKTI access to all the transactions that CICS is going to start. Is this correct? So if I have 15 application transactions to run, the same CKTI starting userid has to have access to all of them. Why isn't the Useridentifier of the Mqseries message just passed in, and then CICS will use that userid to start the transaction. You can set the CICS Bridge up this way, but why not the adapter? Am I missing something or is there an alternative way to do this? Thanks, Gary === Gary Klos Online Systems - PSC United States Steel Corporation 412-433-1225 Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive
Re: CICS Adapter Userid Question
Yup, that's the way it works. What you're asking for couldn't really be implemented since a CICS transaction could be triggered once and then potentially read multiple messages. These may have differing userids in the message descriptor. What you could do is have your own transaction triggered and then have this transaction start a separate instance of the application transaction for each message. It could start each instance under the userid in the message descriptor. This has its own issues though. It requires that the userid starting your transaction, which is the same userid that started CKTI, needs authority to start transactions under each different userid. I agree that this is a common problem that IBM should address in some fashion. I think a good solution though would require changes not just in MQSeries but in CICS as well. - Bruce Giordano "Gary P. Klos" <[EMAIL PROTECTED]> To: [EMAIL PROTECTED] Sent by: MQSeries List cc: <[EMAIL PROTECTED]> Subject: CICS Adapter Userid Question Thursday February 20, 2003 11:41 AM Please respond to MQSeries List I guess I'm just looking for some clarification here. When I use the CICS Adapter and place a message on a queue which is triggered on in cics. Now CKTI starts the transaction I specified in the "Process" definition. However it starts the transaction with the userid that started the CKTI transaction. That is well and good except for the fact if I want to start various transactions for various applications, I have to give the userid which started CKTI access to all the transactions that CICS is going to start. Is this correct? So if I have 15 application transactions to run, the same CKTI starting userid has to have access to all of them. Why isn't the Useridentifier of the Mqseries message just passed in, and then CICS will use that userid to start the transaction. You can set the CICS Bridge up this way, but why not the adapter? Am I missing something or is there an alternative way to do this? Thanks, Gary === Gary Klos Online Systems - PSC United States Steel Corporation 412-433-1225 Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive
CICS Adapter Userid Question
I guess I'm just looking for some clarification here. When I use the CICS Adapter and place a message on a queue which is triggered on in cics. Now CKTI starts the transaction I specified in the "Process" definition. However it starts the transaction with the userid that started the CKTI transaction. That is well and good except for the fact if I want to start various transactions for various applications, I have to give the userid which started CKTI access to all the transactions that CICS is going to start. Is this correct? So if I have 15 application transactions to run, the same CKTI starting userid has to have access to all of them. Why isn't the Useridentifier of the Mqseries message just passed in, and then CICS will use that userid to start the transaction. You can set the CICS Bridge up this way, but why not the adapter? Am I missing something or is there an alternative way to do this? Thanks, Gary === Gary Klos Online Systems - PSC United States Steel Corporation 412-433-1225 Instructions for managing your mailing list subscription are provided in the Listserv General Users Guide available at http://www.lsoft.com Archive: http://vm.akh-wien.ac.at/MQSeries.archive