Author |
Message
|
sarath |
Posted: Thu Aug 04, 2005 1:44 am Post subject: Queue Problem: OPEN QMGR failed not authorized |
|
|
Novice
Joined: 10 Jun 2005 Posts: 16
|
Hi All,
When i am trying to communicate with the queue manager(/var/mqm/qmgrs) created my mqm user with regular login(i mean different user).
It is throwing below error.
QOpFifo.C: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized.
And the code is like below in QopFifo.C
if (!_mq->open())
QTHROW("QOpFifo::reset(): " << _mq->getReason().data());
When we commented the below lines in mq.ini file of Queue manager directory(Service & ServiceComponent Options), Then the regular user could able to communicate with the created queues.
#*******************************************************************#
#* Module Name: qm.ini *#
#* Type : WebSphere MQ queue manager configuration file *#
# Function : Define the configuration of a single queue manager *#
#* *#
#*******************************************************************#
#* Notes : *#
#* 1) This file defines the configuration of the queue manager *#
#* *#
#*******************************************************************#
ExitPath:
ExitsDefaultPath=/var/mqm/exits/
#* *#
#* *#
Log:
LogPrimaryFiles=3
LogSecondaryFiles=2
LogFilePages=1024
LogType=CIRCULAR
LogBufferPages=0
LogPath=/var/mqm/log/NMPS!QM/
LogWriteIntegrity=TripleWrite
#Service:
# Name=AuthorizationService
# EntryPoints=10
#ServiceComponent:
# Service=AuthorizationService
# Name=MQSeries.UNIX.auth.service
# Module=/opt/mqm/lib/amqzfu
# ComponentDataSize=0
Just want to know Is it ok if we comment the above lines? or is there any other way to overcome this? (like adding the regular user account with mqm group)
Detailed Error Message:
2 07:01:35.974 | ALARM: EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized, 1
. NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL
2 07:01:35.974 \ LogFileBase::Log()
2 07:01:35.974 | AUDIT: 2005-08-04 07:01:35|NMPSRequestScheduler|000000|Software|0000|3|EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized, 1 . NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL|
2 07:01:35.974 \ LogFileDateRollover::CheckFileRollover()
2 07:01:35.974 | real_date = 04/08/2005, CreateDate04/08/2005
2 07:01:35.974 / LogFileDateRollover::CheckFileRollover()
2 07:01:35.974 / LogFileBase::Log()
NMPSRequestScheduler:ALARM INFO LOGGED AT 07:01 ON 04/08/2005 2005-08-04 07:01:35|NMPSRequestScheduler|000000|Software|0000|3|EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized, 1 . NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL|
ALARM: EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized, 1. NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL
Thanks in Advance,
Sarath. |
|
Back to top |
|
 |
Mr Butcher |
Posted: Thu Aug 04, 2005 2:21 am Post subject: |
|
|
 Padawan
Joined: 23 May 2005 Posts: 1716
|
you could use setmqaut to set the proper security for your user.
i dont know if it is okay to comment that stuff out. _________________ Regards, Butcher |
|
Back to top |
|
 |
wschutz |
Posted: Thu Aug 04, 2005 2:33 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Mr Butcher is correct. The right way to go about solving the 2035 is to give that user the required authorities via setmqaut.
To answer your question: its okay to comment out those lines provided you are not planning on ever using security services on that qmgr. I've done it in the past many times for strictly "test" qmgrs. _________________ -wayne |
|
Back to top |
|
 |
jefflowrey |
Posted: Thu Aug 04, 2005 3:21 am Post subject: |
|
|
Grand Poobah
Joined: 16 Oct 2002 Posts: 19981
|
I would never disable authorization even for development queue managers.
I don't want the development staff to be able to hand off all security concerns to the QA team. And I certainly don't want them writing code that doesn't know what a 2035 means, and that the program should give up and wait for manual intervention. _________________ I am *not* the model of the modern major general. |
|
Back to top |
|
 |
sarath |
Posted: Thu Aug 04, 2005 5:32 am Post subject: Queue Problem: OPEN QMGR failed not authorized |
|
|
Novice
Joined: 10 Jun 2005 Posts: 16
|
Thanks alot for the quick reply...
Environment is : solaris 2.9 & MQSeries Version is 5.3
We executed the below two commands (Queue Manager is : NMPS3.QM and the Group is admin)
setmqaut -m NMPS3.QM -t qmgr -g admin +dsp +allmqi
setmqaut -m NMPS3.QM -t q -n SYSTEM.** -g admin +dsp +allmqi
The First Command went fine where in we could connect to the queue manager, where as we got stuct at the second one, Error is "No Match Found".
Could any body help me execute this command to allow the group users to access the queues and also how to execute REFRESH SECURITY command after doing the setmqaut commands.
Thanks in Advance,
Sarath. |
|
Back to top |
|
 |
wschutz |
Posted: Thu Aug 04, 2005 5:43 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Quote: |
where as we got stuct at the second one, Error is "No Match Found". |
Can you post the EXACT error you are getting.. AMQxxxx: error message?
After you do get the command to run, go into "runmqsc" to enter "refresh security".
And Jeff's correct, I would not recommend disabling the authorization service, just saying technically it can be done _________________ -wayne |
|
Back to top |
|
 |
sarath |
Posted: Thu Aug 04, 2005 6:52 am Post subject: |
|
|
Novice
Joined: 10 Jun 2005 Posts: 16
|
Here i am giving the details of created queue structure in mqm login.
rapier% ls
@SYSTEM NMPS!QM SATURN!QUEUE!MANAGER
rapier% cd NMPS*
rapier% ls
@ipcc amqalchk.fil dce isem plugcomp qm.ini.orig queues ssl
@qmpersist auth errors msem procdef qmanager shmem startprm
QM authinfo esem namelist qm.ini qmstatus.ini ssem
rapier% ls qmanager
QMANAGER QMQMOBJCAT
rapier% ls queues
CRT_INPUT!0 JT_INPUT!1 SYSTEM!AUTH!DATA!QUEUE
CRT_INPUT!1 JT_INPUT!REINSERT SYSTEM!CHANNEL!INITQ
CRT_INPUT!REINSERT JT_RESPONSE SYSTEM!CHANNEL!SYNCQ
CRT_RESPONSE MOSES_INPUT!0 SYSTEM!CICS!INITIATION!QUEUE
CSS_INPUT!0 MOSES_INPUT!1 SYSTEM!CLUSTER!COMMAND!QUEUE
CSS_INPUT!1 MOSES_INPUT!REINSERT SYSTEM!CLUSTER!REPOSITORY!QUEUE
CSS_INPUT!REINSERT MOSES_RESPONSE SYSTEM!CLUSTER!TRANSMIT!QUEUE
CSS_RESPONSE NMPS_ACTIVE SYSTEM!DEAD!LETTER!QUEUE
DSB_PRL_INPUT!0 NMPS_BLOCK SYSTEM!DEFAULT!ALIAS!QUEUE
DSB_PRL_INPUT!1 QUERYTEST_INPUT!0 SYSTEM!DEFAULT!INITIATION!QUEUE
DSB_PRL_INPUT!REINSERT QUERYTEST_INPUT!1 SYSTEM!DEFAULT!LOCAL!QUEUE
DSB_PRL_RESPONSE QUERYTEST_INPUT!REINSERT SYSTEM!DEFAULT!MODEL!QUEUE
JT_DUMMY_INPUT!0 QUERYTEST_RESPONSE SYSTEM!DEFAULT!REMOTE!QUEUE
JT_DUMMY_INPUT!1 SYSTEM!ADMIN!CHANNEL!EVENT SYSTEM!MQSC!REPLY!QUEUE
JT_DUMMY_INPUT!REINSERT SYSTEM!ADMIN!COMMAND!QUEUE SYSTEM!PENDING!DATA!QUEUE
JT_DUMMY_RESPONSE SYSTEM!ADMIN!PERFM!EVENT
JT_INPUT!0 SYSTEM!ADMIN!QMGR!EVENT
Now to give the permissions to users i am trying the below commands.
rapier% setmqaut -m NMPS.QM -t qmgr -g nmsadmin +connect +inq
The setmqaut command completed successfully.
rapier% setmqaut -m NMPS.QM -t qmgr -n NMPS** -g nmsadmin +dsp +allmqi
No match
rapier% setmqaut -m NMPS.QM -t qmgr -n NMPS* -g nmsadmin +dsp +allmqi
No match
Help me out how to execute this command and how to go about with the REFRESH SECURITY, i mean what are the precautions has to be taken(stop the queues & start again).
PS : I am very new to MQSeries.
Thanks & Regards,
Sarath. |
|
Back to top |
|
 |
wschutz |
Posted: Thu Aug 04, 2005 6:54 am Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Is solaris doing something funky with the * ?
Try:
Code: |
setmqaut -m NMPS.QM -t qmgr -n NMPS\* -g nmsadmin +dsp +allmqi
|
_________________ -wayne |
|
Back to top |
|
 |
fjb_saper |
Posted: Thu Aug 04, 2005 12:32 pm Post subject: |
|
|
 Grand High Poobah
Joined: 18 Nov 2003 Posts: 20756 Location: LI,NY
|
wschutz wrote: |
Is solaris doing something funky with the * ?
Try:
Code: |
setmqaut -m NMPS.QM -t qmgr -n NMPS\* -g nmsadmin +dsp +allmqi
|
|
I hope he is not trying to setup security for queues using -t qmgr !!
Shoudn't it be:
setmqaut -m NMPS.QM -t q -n NMPS** -g nmsadmin +dsp +allmqi
And from my experience with Solaris you did not need to escape the * in this case...
Enjoy  |
|
Back to top |
|
 |
bbburson |
Posted: Thu Aug 04, 2005 1:39 pm Post subject: Re: Queue Problem: OPEN QMGR failed not authorized |
|
|
Partisan
Joined: 06 Jan 2004 Posts: 378 Location: Nowhere near a queue manager
|
sarath wrote: |
. . . and also how to execute REFRESH SECURITY command after doing the setmqaut commands. |
You don't need to run REFRESH SECURITY after setmqaut commands; the changes you make will take effect immediately. You do need to run REFRESH SECURITY if a user is added to a group or a new group is created. In any case it shouldn't hurt anything to REFRESH SECURITY anytime. It is automatically done for you if the queue manager is restarted. |
|
Back to top |
|
 |
wschutz |
Posted: Thu Aug 04, 2005 4:18 pm Post subject: |
|
|
 Jedi Knight
Joined: 02 Jun 2005 Posts: 3316 Location: IBM (retired)
|
Quote: |
I hope he is not trying to setup security for queues using -t qmgr !!
Shoudn't it be:
setmqaut -m NMPS.QM -t q -n NMPS** -g nmsadmin +dsp +allmqi |
Ouch...good catch  _________________ -wayne |
|
Back to top |
|
 |
sarath |
Posted: Fri Aug 05, 2005 1:12 am Post subject: |
|
|
Novice
Joined: 10 Jun 2005 Posts: 16
|
Thanks Alot.
When the user tryed to access the queues the error is :
2005-08-05 07:54:35|NMPSRequestScheduler|000000|Software|0000|3|EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C
: line 106: QOpFifo::reset(): Reason code 2035: OPEN QMGR failed not authorized, 1 . NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL|
This command allows the program to connect to the queue manager.
rapier% setmqaut -m NMPS.QM -t qmgr -g nmsadmin +connect +inq
The setmqaut command completed successfully.
This command allows the GROUP users to access the queues.
Yes, wayne you are right. solaris doing something funky with the *.
rapier% setmqaut -m NMPS.QM -t q -n NMPS\* -g nmsadmin +dsp +allmqi
The setmqaut command completed successfully.
After the above two commands, when tryed to access the queues i am facing the below error.
2005-08-05 07:58:02|NMPSRequestScheduler|000000|Software|0000|3|EEK! THREAD UNEXPECTEDLY TERMINATED: EXCEPTION: QOpFifo.C: line 106: QOpFifo::reset(): Reason code 0: OPEN QMGR failed none, 1 . NMPSRequestScheduler::RequestSchedulerApp::MainThread(). CONTROL|
Please help me out.
Thanks & Regards,
Sarath |
|
Back to top |
|
 |
Mr Butcher |
Posted: Fri Aug 05, 2005 3:36 am Post subject: |
|
|
 Padawan
Joined: 23 May 2005 Posts: 1716
|
reson code 0 ? maybe a program logic error?
can you post the code? _________________ Regards, Butcher |
|
Back to top |
|
 |
sarath |
Posted: Tue Aug 09, 2005 5:59 am Post subject: |
|
|
Novice
Joined: 10 Jun 2005 Posts: 16
|
Hi All,
I don't think its a program logic error coz, in that case with mqm also i should face the same problem, right? But with mqm my application is going fine. Getting errors with other accounts. All the queues & queue mgrs were created with mqm login.
Basically i am getting these below 3 errors respectively.
first one is Q mgr not available and the reason code is 2059
(setReason(Reason code 2059: failed Q mgr not available))
next one is is open queue failed.
open(): open queue failed, queue name = NMPS_ACTIVE with reason code = 2035
and the last one is Open QMGR failed.
setReason(Reason code 0: OPEN QMGR failed none)
But the same application with mqm account i was able to execute succesfully.
After issuing the setmqaut commands also i am getting the above 3 errors only.
Help me out.
Thanks,
Sarath. |
|
Back to top |
|
 |
Nigelg |
Posted: Tue Aug 09, 2005 6:06 am Post subject: |
|
|
Grand Master
Joined: 02 Aug 2004 Posts: 1046
|
Enable the authority events on the qmgr and browse the SYSTEM.ADMIN.AUTH.EVENT queue for the event error msgs after the problem occurs. _________________ MQSeries.net helps those who help themselves.. |
|
Back to top |
|
 |
|