IBM MQ에 연결하는 중에이 오류가 발생합니다. 이것이 권한으로 인한 것이지만, IBM MQ와의 연결을 확인하는 방법이 있습니까?MQ에 연결 중 '2035'('MQRC_NOT_AUTHORIZED') 오류가 발생했습니다.
좋습니다.
IBM MQ에 연결하는 중에이 오류가 발생합니다. 이것이 권한으로 인한 것이지만, IBM MQ와의 연결을 확인하는 방법이 있습니까?MQ에 연결 중 '2035'('MQRC_NOT_AUTHORIZED') 오류가 발생했습니다.
좋습니다.
MQ 관리자와 함께 권한을 확인해야합니다.
2035는 사용자의 연결이 QMgr에 있음을 나타냅니다. 잘못된 채널 이름, 호스트 또는 포트를 가지고 있다면 2059를 돌려 받게됩니다. 2035는 연결이 청취자에게 연결되었고 요청 된 이름의 채널을 찾았으며 연결을 시도했음을 의미합니다.
이 지점을 테스트하려면 연결하는 데 사용하는 ID를 인증하거나 채널의 MCAUSER 속성에 인증 된 ID를 입력해야합니다.
WMQ 보안이 클라이언트 채널에서 작동하는 방식에 대한 자세한 설명은 http://t-rob.net/links에있는 WMQ Base Hardening 프레젠테이션을 참조하십시오.
인증 메시지를 사용하면 2035가 이벤트 대기열에 표시됩니다. 그런 다음 메시지를보고 어떤 ID로 연결했는지, 그리고 어떤 옵션이 사용되었는지 확인하십시오. 2035는 큐 관리자 나 다른 것으로 설정해야하는 권한에 대해 요청했기 때. 일 수 있습니다. 인증 메시지가 표시됩니다.
이 작업을 수행하는 방법을 설명하는 링크가 있습니까? –
Windows에서 실행되는 Q/Q 관리자의 경우, Q/Q 관리자 컴퓨터에서 사용자를 생성해야 할 수 있습니다. Q-client 시스템의 사용자와 일치시키기 위해 Q-machine에서 사용자를 작성한 후] 해당 사용자를 해당 시스템의 'mqm'그룹에 추가하십시오.
단계 :
있는지 확인 [질문 클라이언트를 생성하는 데 사용되는 도메인 사용자, 즉 Q- 클라이언트 응용 프로그램이 실행중인 사용자]도 Q/Q-manager가있는 상자에 있습니다. Q/Q-manager 상자에 로컬 사용자를 만들거나 [Active Directory 사용자를 좀 더 복잡하게 만들어야 할 수도 있습니다.] 사용자를 도울 수 없습니다.
Q/Q 관리자 상자에서 방금 작성한 사용자 [또는 이미있는 경우 기존 사용자]를 mqm 그룹에 추가하십시오. [Windows 서버 상자에서 Microsoft Management Console (1. 명령 줄에서 'mmc'를 2. 파일> SnapOn 추가/제거> 로컬 사용자 & 그룹 3. 사용자를 그룹에 추가)]을 사용해야합니다. 'mqm'그룹은 이미 Q/Q-manager 시스템에 존재해야합니다.
사용자에게 mqm 그룹에 사용자를 추가하여 권장되지 않는 전체 MQ 관리 권한을 사용자에게 부여하면 해당 기능을 수행하는 데 최소 권한 요구 사항을 부여해야합니다. 또한 MQ v7.1 이상에서 기본적으로 CHLAUTH 규칙은 MQ Admin 사용자로 확인되는 연결이 작동하지 못하도록 차단합니다. – JoshMc
@JoshMc 권장되는 해결 방법은 무엇입니까? –
창에서 사용자에게 직접 권한을 부여 할 수 있습니다. v8 이전의 유닉스에서 사용자를 mqm 이외의 그룹에 추가하고 해당 그룹에 권한을 부여 할 수있었습니다. v8 이상에서는 유닉스에서 qm.ini에'SecurityPolicy = user'를 설정하고 권한을 사용자에게 직접 부여 할 수 있습니다. – JoshMc
mcauser ('mqm')를 설정하면 해결할 수도 있습니다. 2035 오류를 극복 할 수있었습니다. 에
Define channel (channel1) chltype (svrconn) trptype (tcp) mcauser(‘mqm’)
초능력 고맙습니다 내 SENIOR 빌랄 아마드 (PSE)
이 대답의 제안은 사용하기에 좋지 않습니다. MCAUSER ('mqm')'을 설정하여 응용 프로그램에 전체 MQ 관리 권한을 부여합니다. 또한 MQ v7.1 이상에서는 기본적으로 CHLAUTH 규칙이이 연결이 작동하지 않도록 차단합니다. – JoshMc
당신은 보조금을 확인 dspmqaut 사용할 수 있습니다. 아래는 관리자 QM1 및 대기열 LQ1을 대기열에 사용자 POC 액세스 권한을 부여 할 수있는 샘플입니다
# check the access right of user POC to QM1
dspmqaut -m QM1 -n LQ1 -t q -p poc
# if you want to give access, you should use
setmqaut -m QM1 -n LQ1 -t q -p poc <access Types>
# eg (put everything - in the real live scenario, choose only what you want to grant) :
setmqaut -m QM1 -n LQ1 -t q -p poc +put +get +browse +inq +set +crt +dlt +chg +dsp +passid +setid +setall +clr
그리고 마지막으로
endmqm -i QM1
strmqm QM1
와 QM1를 다시 시작하는 것을 잊지 말아, 당신은 오류 2035없이 진행 할 수 있어야한다.
새 OAM 규칙을 추가 한 후에 큐 관리자를 다시 시작할 필요가 없습니다. – JoshMc
Windows에서 MQ를 사용하거나 Unix/Linux에서'SecurityPolicy = user'와 함께 MQv8 이상을 사용하지 않는 한,'-p' 플래그로 권한을 부여하는 것은 좋지 않습니다. 이는 v8 이전의 Unix/Linux에서는 v8 이상에서 기본적으로 결과 OAM 규칙이 실제로 사용자 자체가 아닌 사용자의 기본 그룹에 부여되기 때문입니다. 많은 경우에 기본적으로 많은 수의 사용자가 동일한 기본 그룹 (예 : 그룹'사용자 ')을 갖고있는 경우이 점을 악용합니다. – JoshMc
http://www-01.ibm.com/support/docview.wss?uid=swg21962081 – mod
OMG! 이 얼마나 끔찍한 Technote! IBM에 연락하여 문제를 해결할 수 있는지 알아 봅니다. 나열된 결함은 IBM FTM에서 발생하며 MQ 자체에서는 발생하지 않습니다. 내 충고는 연결을 시도하는 사용자에게 적절하게 권한을 부여하는 것이 었습니다. IBM은'CONNAUTH' 기능을 해제합니다. 'CONNAUTH'가 끔찍하게 망가 졌기 때문에 좋은 충고가되었지만 누군가가 그것을 따라 간다고 가정 할 때 그들은 여전히 MQ에서 적절히 권한을 부여 받기 위해 연결하고있는 ID가 필요합니다. 링크 주셔서 감사합니다! –